Rewrite game Magic Carpet 2 with Engine GODOT and REMC2 engine REMC2
Diskord of projects MDmod/remc2 and MagicBalls REMC2 MC2 HDmod
- Please be patient, but don’t hesitate to report bugs. The game’s optimization is still poor; I’ll continue to tune some models’ triangle counts and see if I can optimize the lighting and fire effects (especially in Meteor III), but don’t expect miracles :)
- Document everything in an issue on GitHub. For specific bugs, note the level and location; for particularly random bugs, save the game using F5 before the crash and then attach the zipped folder "user\AppData\Roaming\Godot\app_userdata\MagicBalls\CDdata\GAME\NETHERW\SAVE"
- Report everything: bad models, incorrect sizes, wrong music, etc.
- If you see text with numbers instead of an object, try to take a screenshot
- Some features from the original game are missing, and the keyboard shortcuts listed in the original help menu don’t work either. Press F1 to see which keys are currently in use.
- Please also add suggestions for improvements or additions to the original features in the issues.
- If you’d like to contribute to development—whether you’re a graphic designer or a programmer—please reach out on Discord; any help is welcome.
- Expect that I’ll be a bit clueless at times and will need to ask for help :)
- The game requires data from the original Magic Carpet™ 2: The Netherworlds. The installation now supports the GOG version https://www.gog.com/en/game/magic_carpet_2_the_netherworlds. Please install that version. If you have a different version and can’t get it to install, create an issue, take a screenshot of the game folder, and I’ll add more options to the engine.
- Download and extract the game from the releases) (currently only the Windows version):
- Run the .exe; the first time, the game will ask you for the installation path for MC2 (from GOG). Find it and confirm.
- The first time, you’ll need to wait for the game to extract the files; subsequent launches will be faster.
- The game saves user files to this folder, which also contains save files, etc. If you want to transfer them between the original game and the remake, or if you no longer need the game, you can delete this folder(you can use script removeUserMBFolder.bat): user\AppData\Roaming\Godot\app_userdata\MagicBalls\
-Add gamepad controls, etc.
-Add first-person/third-person camera options
-Clean UP code and unused models
-Optimalizatins
-Some better 3D models
-There are so many improvements that it doesn't make sense to list them all
-You can play through the game from start to finish
-Many fixes and updates
-Draw Spider Web
-Draw Terrain modification by fire
-Add models to level 1-5
-Integrate data copier from Magic Carpet 2
-Better terrain abilites(water/lava)
-Add sounds/music.
-Add menus/levels, etc.
-Add proper water.
-Add particle effects.
Second youtube video
-Add sounds
-Add music
-Add basic code to copy some data from original CD
First youtube video
-Draw minimap
-Update UI-particaly
-Add Ballon 3d model
-Implement palette modifications (red or grayscale)
-Add using mouse buttons
-Add select spells
-Add terrain changes

A lot has changed in this version. I found that copying terrain in every frame is extremely demanding.
The first tests showed less than 1 FPS.
I had to put most things into the shader. After a series of struggles, I created a shader that:
-handles reflections and water waves
-I now send the height, index, and rotation maps to the shader as textures
Thanks to this, I got up to 3-4 FPS.
Then all I had to do was rewrite the key parts of the code from GDSCRIPT to C++, and I got up to 60 FPS.
-Terrain rendering and updating moved to shader
-Terrain work moved to C++
-Create true model for building possession
-Add multimesh for objects(for corect visibility of objects)
-Fix water reflections
-Fix water waves
-Copy terrain modification
-Check spell disappearance-maybe-ok
-Test mouse button
-Add teplate spells fireball and possesion
-Add mana spheres for gold and white
-Test kill and possesion mana from goats
-Add additional temporary models
-Fix object display so they are always in front of the camera
-Extend Multimesh terrain to 5x5
-Test using first billboards and models(smoke and goat)
-display entities (all as universal objects for now)
-synchronize speed with engine (limit frame rate)
-add rotation to REMC2 engine
-fix terrain rendering triangles
-add compute position of player by REMC2
-add arrows input by REMC2
-many cleanings in REMC2(copy new engine version)
-first render of terrain







