
Mods / Craftable Cartography
Author: ProfCupcake
Side: Both
Created: Jan 13th at 2:13 PM
Last modified: Mar 25th at 2:38 PM
Downloads: 3056
Follow Unfollow 124
Latest release (for outdated Vintage Story v1.20.6):
CraftableCartography_0.1.6.zip
1-click install
For those of you who think the map is too overpowered, but still want navigation options, here's a mod that starts by taking mechanics away from you. Fun!
Things you'll miss
The following features are all disabled by default with this mod:-
- Map
- Minimap
- Coordinates HUD
- Direction HUD
- Map tracking the player
- Map showing players' locations
So, at least at first, you'll need to learn how to navigate the old-fashioned way. However, for each removed feature, there is an item you can craft to restore it.
Things you'll want
There are a few tiers of navigational equipment. First of all, there's the good ol'
Map
... which lets you access the map, as long as it's in your hotbar. Note that player markers won't appear on the map, nor will the map centre on your location or track your movement. Learn to read the landscape!
There is a helper command, if you find your map is centred on an inconveniently distant location: .recentremap [x] [z]
Compass
It's a compass, it shows your heading. It does not give you back the old direction HUD. Instead, you must use (right-click by default) it to read your current heading.
Note that it doesn't work instantly! The needle takes a couple of seconds to swing round and settle on a direction.
Sextant
Once you get a bit more advanced, you can build one of these bad boys. Similar to the above, this doesn't restore the coordinates HUD, but instead allows you to see your coordinates by using it.
Sadly, this mod does not feature realistic sextant mechanics, and probably never will. Sorry, celestial navigation nerds. Instead, it simply takes about 7-8 seconds to home in on and display an accurate position.
Temporal Compass & Temporal Sextant
Navigation aided by funky temporal magitech! These are the items you want if you wish to restore the coordinates and/or direction HUD, as long as they are in your hotbar.
Functioning as a direct upgrade to the compass and sextant, these use the same base item to construct. Hence, you can dismantle the compass and sextant to get the base item back for upgrading. No redundant tools lying around!
As part of this mod, I also added a degrees heading to the direction HUD. :]
JPS
The ultimate navigational tool: Jonas' Positioning System. Having this in your hotbar restores all missing HUD elements, including the minimap. It also allows you to see your position on the map.
It also allows you to see other players, but only if they've tuned it to the same channel. To do so, there's a chat command: .setJPSchannel [channel]
Other Things
Prospecting
Unless you have a JPS, prospecting won't automatically add the marks onto the map. Instead, you must manually enter the coordinates of your latest reading. Note that you can only have one reading "stored" at a time: if you don't mark it on your map, it is lost forever.
Things to come
Well, for one thing, I should probably add the crafting recipes to this description at some point. Maybe some screenshots or something, too. Other than that...
- Features
- Some kind of container item, to put a map, sextant, and compass all in one slot
- Alternative way of getting story locations (coordinates?)
- Config options to disable specific restrictions
- Alternate sextant mode: only shows distance from equator
- Maybe replace text UI for compass with an actual spinning compass display?
- This mostly depends on whether I'm capable of getting it to work
- Maybe require JPS to be charged with temporal gears?
- Maybe beacons/locators?
- place beacon -> use locator on beacon -> locator now points to beacon
- alternatively, locator can be used on any position, and now permanently points to that position
- can copy a locator location onto an unset locator
- Fixes
- Glass variants. I forgot to add them. Oops?
- Owned elk still show on the map
- The coordinate/direction HUD can get stuck in its "lowered" position when the minimap is disabled. Annoying!
- Also it still has its grey background, even when neither is visible. Mildly irritating!
- Improvements
- The models could charitably be called "programmer art". I'd like to zhuzh them up a bit.
- Prospecting mechanics
- Add option to simply click on map to add prospecting reading
- Possibly add menu so that multiple prospecting readings can be stored and then set later?
Alternative Mods / Forks
Like the idea, but not my particular design decisions? Here's some alternatives (um... one alternative, at least) based on this.
Craftable Cartography Fork by kastrom3
A significant rebalance. Adds a new cheaper compass, combines the temporal items into one, and makes the JPS a helmet with limited charge. Also changes the interface somewhat so you don't have to actively use the basic compass/sextant to receive the information.
Also includes a fix for showing owned elks on the map, which is something I forgot to account for so far.
Craftable Cartography - Classics by A_Whisper
Cuts the magitech temporal items out of the mod, for those who want a more grounded, realistic experience.
Compatibility
This makes fairly major changes to significant parts of the map and coordinates/heading UI. Hence, I would expect that anything which tries to expand the map will likely cause issues with this mod. That said, if anyone can confirm that their favourite map mods are compatible with this, I'll add them to a list here.
Compass doesnt seem to work in latest version no matter which hand or how long i right click it
Some players and I on the Vintage Story Discord have been talking fairly in depth about how a "Crude Map for early game, where players can draw on it themselves." would work, and I wanted to share the ideas here for any modders who would be interested, because I think this could be the basis for a far more interesting and creative mapmaking system. The idea is basically about an early game map, which is drawn 100% by the player themselves. Used in tandem with a Sextant, these player illustrated maps would accumulate detail over time, players would be creating their own Lord Of The Rings style map illustrations, with unique artistic embelishments and distortions that you'd see in old historical maps. We're picturing the functionality like this:
Trungad
Maybe. Depends what you want to configure.
Some things aren't as easy to change at runtime.
This mod is great, but I dont want to have to make yet another fork for my specific needs between so many different ideas or features for everything i want to mix and match and tweak or change, Cant everyone get together on one project from the forks and make this mod configurable using config lib? :(
OP2
Huh. You're right.
I actually went back into the files to check on my end, and in the source it definitely does have the isTool field. You can see on the GitHub repo here: https://github.com/ProfCupcake/CraftableCartography/blob/master/resources/assets/craftablecartography/recipes/grid/jps.json
So I guess either something went wrong when I built the mod, or I just uploaded an earlier version by mistake. Hrm.
The latest update says it fixed the JPS crafting recipe consuming the knife and wrench, but it is still consuming them and I checked the JSON file for the JPS recipe and this part is missing " "isTool": true " from the knife and wrench parts.
A_Whisper Thank you very much for your efforts.
I have gone ahead and made a simple fork of the mod that contains only the classic/traditional tools. ProfCupcake I know you plan on creating a version of the mod like this, so if that time comes, please let me know, and I will gladly take down the fork. Thanks for creating this wonderful mod!
Thranduil61 You may be interested in this as well, since I saw your comment.
https://mods.vintagestory.at/craftablecartographyclassics
Talk about timing. I literally just made a suggestion post with these EXACT ideas the other day lol
The more you can impliment these features in a diagetic form, the better! Something like holding a physical map to look at, similar to that other block game. Or as you suggested, an actual spinning compas item!
I dont expect that sort of stuff to be an easy feature to add though, espesically for a mod. But the added immersion would more than make up for the inconvenience of not having these features by default!
@ProfCupcake Thank you so much for your kind reply. Love the mod. 10/10
Thranduil61
This has been requested enough that I'll likely make a separate mod with a more limited set of tools like you suggest. Unfortunately, disabling items as a config option isn't that easy (as far as I know).
However, that won't be coming for a while, at least until this one is more complete. Until then, I can only offer the workaround of simply not crafting the temporal items. Alternatively, this is entirely open source, and disabling items it the JSON isn't that difficult: I would be fine with you making your own version with a few items disabled.
Is there a way to disable temporal tools, map and jps? I want to play with the map disable so I only need the compass and sextant.
Vrael
I would absolutely love to do that, and that is theoretically the goal of the compass, but I'm still trying to figure out how to do so.
Thought this might be an intresting implementation if possible:
for the Sextant instead of only displaying the coordinates or distance to the equator it could in addition be used to "record your last known location" onto the map, when the sextant is used it will in a sense run the ".recentermap" command with the players current position. This is even if it is possible to code though.
Is there any way to make the compass needles spin in game like the Compass2 Mod? Would be more immersive than having a dialogue window opening up.
Does this mod include a config to allow me to disable some items? I'd like to keep just the traditional tools and disable the magitech/temporal tools such as the JPS.
So, I'm running into nothing working... The compass does nothing. The sextant works, I suppose. The map does jack no matter what and I honestly haven't had the time to test the temporal compass. How does the map item work because, allowing use of the map, it does not. The compass neither changes to show direction or makes any indication of direction. I'm sure I'm missing something obvious but obviously I can't figure it out. Please and thank you!
Edit: Nevermind, I am a idiot. So I went into my world with my friends with coodinate overaly and maps off. I didn't realize this mod would take away AND restore vanilla functions. Everything seems to work fine. Great mod, now that I'm not too dumb to use it!
For all the Gamers who made a Temporal Compas, to see the cords its in Settings- Interface
DeviousDoge
Thank you for logging your fix for it. Was having the same thing happen and losing my mind.
Running into a pretty gnarly bug; whenever I hit M to open my map with no map on my hotbar/inventory, it brings my mouse pointer on screen, and I can't do anything to get rid of it. If I hit ESC, the game locks up and I have to alt+f4. I've used this mod before and it worked okay, so no clue why it's doing this now; only other mods I'm running that should affect the map are Campaign Cartographer & Marximus Medieval Map (which I tested on a fresh world with both gone, issue persists). Any help? I can post more info if needed, just curious if there's a known issue here or known compatability problems that cause this.
Edit: Slowly slimmed my mod list until it was JUST craftable cartography and the game's .dll files. Nothing else. Version 1.20.4. Still had the same issue :(
Edit 2: Uhh, alright, oddly enough, hitting my minimap key seems to have fixed it? I guess not having your minimap toggled (I don't know on or off) can cause this problem? I have no clue if it's toggled "on" or "off" in the background, but just updating this in case someone runs into the same issue I did. Will edit this comment again if I experience any further issues. :)
Is the JPS supposed to consume the knife and wrench? Also some other smaller weird things about the mod but otherwise it's great. I would like if the map actually followed me once I have the JPS instead of having to recenter it every time using commands.
I'm loving this mod so far, and I also appreciate that it only seems to map your surroundings when you open the map - which makes sense. Though it does surprise me just how much terrain is mapped each time, leading me to ask if there's a way you could make the radius configurable with a smaller default?
I just feel like it's odd to be able to map the area out so precisely to a distance further than I can actually see xD
Hey! Great mod.
Me and my friends managed to get JPS after long hours of effort.
One thing I've seen is the minimap is placed on the bottom right and doesn't follow me.
Do you think there's a conflict going on here or maybe a bug?
Im on 1.20.4 if that matters. Thanks
Modeste
That's the nature of this mod rn I'm afraid - you could charitably call it an evolving, experimental creation.
If you were feeling less charitable, you could call it a complete mess made by an inexperienced and incompetent boob desparately trying to patch up his mistakes as he goes. 😅
ProfCupcake
Oh I feel silly you're right, since i downloaded this mod relatively recently i did not realize it had updated so much so quickly! I was on 0.1.2, oops...
Well done on updating this so much and so quickly! I missed 3 updates somehow ^^
Modeste
Are you definitely on the latest version (0.1.5)? There was an issue with the smithing recipes in a previous version, but it should be fixed now.
Also, which metal are you using? The recipes are not available for every metal.
First of all, this is a fantastic mod, thank you so much :)
Same as RowdyArt I cannot craft any of the metal parts, looking into the H menu they don't seem to have any crafting recipes outside of recycling an existing item with a knife (like taking the compass frame out of a compass with a knife).
I tried smithing an ingot, can't see the compass frame in the option, for example.
I tried this without any other mods as well, so i don't think it's a mod incompatibility.
Dingergum
One of many exploits, I'm afraid. At least this is one I have a chance of fixing. I'll add it to the list.
Loving the mod so far! But i just found a little exploit. If you have just the map, you can still press spacebar to recenter the map to your current location, which can be used to track your position without the need of a JPS.
disputedname
It doesn't currently touch prospecting at all. That's one of the several things that need to be addressed at some point.
How is Prospecting affected by this mod?
Viktoria
Should now be fixed.
Experiencing crashes with newest version:
Running on 64 bit Windows 10.0.19045.0 with 64730 MB RAM
Game Version: v1.20.3 (Stable)
1/31/2025 12:25:36 AM: Critical error occurred in the following mod: CraftableCartography@0.1.4
Loaded Mods: aculinaryartillery@1.2.3, betterloot@1.1.0, BuggisRandomChanges@3.7.0, chiseltools@1.14.11, combatoverhaul@0.1.22, long-term_food@0.1.8, MoveLikeKaji@0.0.6, primitivesurvival@3.7.5, game@1.20.3, vsimgui@1.1.7, alchemy@1.6.42, armory@0.1.4, betterfirepit@1.1.5, betterruins@0.4.6, carryon@1.8.0-pre.1, commonlib@2.6.1, configlib@1.4.3, CraftableCartography@0.1.4, expandedfoods@1.7.3, fromgoldencombs@1.8.5, hydrateordiedrate@1.7.4, kevinsfurniture@1.6.1, maltiezcrossbows@0.6.4, maltiezfirearms@0.10.4, medievalexpansionpatch@1.0.0, noticeboard@1.1.0, onebedsleeping@2.5.0, petai@3.0.1, pileful@1.1.5, recipeselector@1.0.1, rivers@4.1.0, rpvoicechat@2.3.12, tabletopgames@2.6.0, th3dungeon@0.4.0, trailmodcupdate@1.1.0, traitacquirer@0.9.6, creative@1.20.3, vsinstrumentsbase@2.0.0, survival@1.20.3, xlib@0.8.10, cats@3.0.0, cokemakesense@1.0.1, exoskeletons@0.2.2, em@3.0.0, playercorpse@1.11.0, shearlib@1.1.1, stonequarry@3.4.3, tpnetpatched@1.14.5, vsinstruments_quackpack@1.0.0, wolftaming@3.0.2, xskills@0.8.11, tailorsdelight@1.9.0, theworkingclasses@1.0.1, wool@1.5.1, dressmakers@1.5.1
System.NullReferenceException: Object reference not set to an instance of an object.
at CraftableCartography.MapLayers.CCPlayerMapLayer.ShouldShowPlayer(IPlayer player) in C:\Users\Professor Cupcake\source\repos\CraftableCartography\CraftableCartography\MapLayers\CCPlayerMapLayer.cs:line 132
at CraftableCartography.MapLayers.CCPlayerMapLayer.OnMapOpenedClient() in C:\Users\Professor Cupcake\source\repos\CraftableCartography\CraftableCartography\MapLayers\CCPlayerMapLayer.cs:line 103
at CraftableCartography.MapLayers.CCPlayerMapLayer.OnMapOpenedClient(Single _) in C:\Users\Professor Cupcake\source\repos\CraftableCartography\CraftableCartography\MapLayers\CCPlayerMapLayer.cs:line 62
at Vintagestory.Common.GameTickListener.OnTriggered(Int64 ellapsedMilliseconds) in VintagestoryLib\Common\Model\GameTickListener.cs:line 27
at Vintagestory.Common.EventManager.TriggerGameTick(Int64 ellapsedMilliseconds, IWorldAccessor world) in VintagestoryLib\Common\EventManager.cs:line 57
at Vintagestory.Client.NoObf.ClientMain.MainRenderLoop(Single dt) in VintagestoryLib\Client\ClientMain.cs:line 825
at Vintagestory.Client.GuiScreenRunningGame.RenderToPrimary(Single dt) in VintagestoryLib\Client\MainMenu\Screens\GuiScreenRunningGame.cs:line 161
at Vintagestory.Client.ScreenManager.Render(Single dt) in VintagestoryLib\Client\ScreenManager.cs:line 695
at Vintagestory.Client.ScreenManager.OnNewFrame(Single dt) in VintagestoryLib\Client\ScreenManager.cs:line 670
at Vintagestory.Client.NoObf.ClientPlatformWindows.window_RenderFrame(FrameEventArgs e) in VintagestoryLib\Client\ClientPlatform\GameWindow.cs:line 88
at OpenTK.Windowing.Desktop.GameWindow.Run()
at Vintagestory.Client.ClientProgram.Start(ClientProgramArgs args, String[] rawArgs) in VintagestoryLib\Client\ClientProgram.cs:line 334
at Vintagestory.Client.ClientProgram.<>c__DisplayClass10_0.<.ctor>b__1() in VintagestoryLib\Client\ClientProgram.cs:line 130
at Vintagestory.ClientNative.CrashReporter.Start(ThreadStart start) in VintagestoryLib\Client\ClientPlatform\ClientNative\CrashReporter.cs:line 93
"Alternative way of getting story locations (coordinates?)"
When the world map is disabled in serverconfig right clicking with the story location maps (bought from traders etc) prints how many blocks you are away from the location, rather than marking it on your map.
You could probably harmony patch this to work with your mod
I cannot seem to craft any of the metal parts required for the items. No smithing recipe or mold to pour them.
Think I might've had a stroke of genius come over me. At times ore deposits end up beneath lakes and oceans right? And you want to ensure that your tunnel does not dig into the lake itself, but underneath it. How about a lead line? That way you can get an immersive reading of how deep a part of a lake/ocean is, as long as you have enough rope to reach the bottom. Thoughts?
I want this so bad! The sextant giving coordinates with a small delay is fucking brilliant.