What should i put in GameShared?
- Basically any asset that a modder could use: building blocks, materials, props… and most importantly, your mannequin. In this way, level modder could easily add StartPlayer to their world and test it with all the gameplay mechanics that the original player character offers.
What should i put in Game?
- For example security measures against broken mods (max xp, falling through floor…)
- Multiplayer mechanics
- Mod Manager
- And any 3D marketplace assets you purchased because it would probably be illegal to make them available to the public
Persistent Data:
- The Game instance is the only safe place to store persistent data (save / load).
- Add forward functions to GameShared like AddQuest, UpdateQuest, AddProp, AddBuildingBlock, AddWeapon, AddVehicle, AddItem, AddNPC, AddLevelToMap…
Map:
-
Organize you game world (map) into POI (point of interest) chunks. This allows the modders to add unlimited new levels (landscaps, cities, planets…) and expand the game world.
-
Quest progress should be saved (AddQuest, UpdateQuest) so that the player can easily switch between levels and continue their quests at a later time.
-
Maybe some modder just want to add an Item. Implement a function AddItem and all the traders in the world will offer this new Item in their shops.