• 2D
  • How can i combine Godot Projects?

Hey, im am a noob. i started watching hours and hours of tutorials 2 weeks ago and never had anything to do with programming before, so pls dont be too hard on me.

Im trying to make a birthday present for a friend. I want to create a little 2.5D game where "he" as the main character walks from the bus to his home, enters his home, switch scenes to a room containing NPCs or "his friends" who are thworing a suprise party and each has a different present in form of a "Videogame" im preparing in seperate Projects. for example one is a jump and run, the other a rpg etc, i plan a rogue like...but its alot of work.

I want him to be able to talk to different NPCs and then he can decide to play their game and it switches to that specific game. He can start playing that, save the game( which is also hard for me to imagine to save a game within a game, while he can also save the "birthday game progress" ) and leave those games via menu to play another present and finish that game later. And when he completed all games, he is going to unlock an event and the game ends.

so i want to import the rpg and jump and run Projects and maybe some more Games from a seperate Projects into the Birthday Game. i also dont know yet how to switch the controlls to a different kinematicbody but, i can maybe figure out this.

I just want to know if its even possible and if yes, how and if not, how do i create this game concept of talking to an npc and switching to a jump and run, and then leaving the jump and run via menu or completion and turn back to the rpg ? to have multiple different games within a game

(also i dont know if 2.5D is the right decription, it should be possible to go up left down right. which is still 2D but i want it to look a little more like hmm.. ah nvm this.

11 days later

I hope there is a lot of time left until your friend celebrates his birthday, because your project sounds like work for at least a couple of weeks/months.

Why are you preparing every game in a seperate project? My guess is that it would be a lot easier to create every "sub-game" in your main project. Just use seperate scenes for every game. For example Home.tscn, JumpNRun.tscn, RPG.tscn, RogueLike.tscn and so forth. These scenes are containing everything related to the corresponding game. Every scene contains a Player-Node which reacts to the controls the way you want it. So you wouldn't need to switch the controls over to a different KinematicBody.

So you only would need to have a Root-Node that does the whole loading/unloading-scenes stuff. Saving the progress would be relatively easy that way, too! Imagine your friend just started your game for the first time: There is no save-file so you can create a new one with every progress set to 0. This progress is stored in your Root-Node.

If you friend chooses/plays the Jump'n'Run (or any other game) you can emit a signal to the Root-Node if he progresses within the game. For example if he reaches a checkpoint or completes the game. With every progress within the sub-games you can evaluate the overall progress. The Root-Node can then save/load the data. Check out the tutorial from Davide Pesce to see how to save and load data for different entities/scenes in a single file: https://www.davidepesce.com/2020/07/31/godot-tutorial-19-start-menu-changing-scene-saving-loading-game/

22 days later

thx for your help. yes, i didnt manage to do this in time xD Maybe i can go for the next year if i still have the strengh for that but for now i got him another present. still, i appreaciate your answer!