This is the testing Godot forums! All forum posts unique to this forum will be deleted! Please use the main forums here for any posts you want to keep. All forum rules still apply.

Collect the Gems; Godot 3 edition

Ace_DragonAce_Dragon Posts: 323Member
edited July 2019 in Projects

Everything is being redone compared to the old Godot 2 version. Most of the individual assets are still the same, but there are completely new materials, new logic, new objects, and new mechanics.

Among the differences
1. Some mechanics see their debut a bit earlier, the old game had powerups not being seen until the first boss level (compared to the first level here).
2. You don't just wheel into armor pieces, batteries, and other things anymore. You get them out of blocks which you break by jumping on them.
3. The special objects (that appeared when all gems are collected) are gone. In their place are special red-colored point objects. There's even a few that are only collectable if a task is completed.
4. The levels are bigger, and the camera can turn a full 360 degrees. The player can move faster too.
5. There are lives and extra life blocks now
6. Enemies that you can destroy are in
7. The UI has a new gem indicator that is more minimalist. A center circle transitions from black to red as you get close to a gem, you also get a white outline if you are moving in the direction of a gem.
8. The logic in general should be faster, the code has most logic separated into their own functions, so less code being checked at once.

The controls are mostly the same, arrows move, space jumps, but pressing space a second time with the thrusting powerup can send you down at high speed (for getting rid of enemies and smashing blocks).

Runs at a silky-smooth 60 FPS on my new GeForce GTX 1060 6GB (this is a very common card according to the statistics from Steam, very much in the mid-range, so most discrete GPU owners should see it run fine).

I did the exported builds in a Godot 3.1 dev. version (Godot itself gave no errors, so hopefully it worked). By the way, 'Totally Lost' is not dead (as I wanted to at least get a demo done to see what full use of Godot 3's new 3D engine looks like).

Enjoy. :)

Tags :


  • emo10001emo10001 Posts: 152Member

    Can't wait to look at this. Will download during lunch :)


  • Ace_DragonAce_Dragon Posts: 323Member
    edited July 2018

    Finally, after a bit of time on using Blender Cycles and away from this, I got to work on a update and took care of a number of todo items.

    1. Invincibility now works (with its own tune and termination of the power after said tune is done).
    2. Sound and Music for the level, movement, collecting, notification when the exit is active, finishing the level ect...
    3. Checkpoints now work (with the proper reset of stats, powerups are lost though).
    4. Variable jumping
    5. The player is now properly disabled when in a lose situation
    6. A rewritten camera system with GDscript-based interpolation and multiple angles depending on the situation
    7. Exit is functional, right now all you get is a message (with stats) where you quit the game afterward.
    8. A couple of graphical boosts (tonemapping, reflection probes).
    9. Checkpoints have higher quality detection fields and collisions (thanks to the new 'Cylinder' bounds type)

    The first level is about where i want it now, the next obvious thing is getting the hub level started.

  • MagicLordMagicLord Posts: 578Unconfirmed

    What bothers me is the player physics, they are special and un precise , turning is too fast. A simple ball would have been more enjoyable.
    BTW good remake.

  • Ace_DragonAce_Dragon Posts: 323Member

    @MagicLord said:
    What bothers me is the player physics, they are special and un precise , turning is too fast. A simple ball would have been more enjoyable.
    BTW good remake.

    The movement does need work to make it go straighter, but I haven't gotten around to testing tweaks yet. I'm also not going to take the easy way out and do a rolling ball instead (already did enough balls and boxes in the Blender Game Engine). Godot has a lot of power in its ability to have reusable object setups, so there's no reason to not do a character.

  • Ace_DragonAce_Dragon Posts: 323Member
    edited July 2018

    Version 1.02

    1. -The hub level has been started
    2. -Working level pads
    3. -More pads unlock as levels are completed
    4. -Returning to the hub returns you to the pad and not the beginning
    5. -Working message boxes (the Hub and the Levels)
    6. -Early preview of Level 2 (nothing of substance in yet though).
    7. -Early working code for slope alignment (a little rough yet, but it's functional).
    8. -Proper escaping (esc in the levels sends you to the hub, esc in the hub quits the game).
  • Ace_DragonAce_Dragon Posts: 323Member
    edited August 2018

    New version; 1.03.

    1. -Rail detection, you can no longer get stuck on rails
    2. -Movement stabilization, you are far more likely to go straight when not turning.
    3. -More of level 2 done, introducing turrets and a shooting powerup. It's not finished yet though and there is no exit.
    4. -Fixed pressing esc. in levels often quitting the game
    5. -Better collision and detection shapes for the checkpoint objects
    6. -Extremely long jumps in some cases is no longer possible
    7. -Far better slope alignment that works for all angles
    8. -Fixed wrong sound when falling off of the level
    9. -Various other tweaks that may not be coming to mind
      It should be a bit more playable now than before :)
  • Ace_DragonAce_Dragon Posts: 323Member
    edited October 2018

    New version; 1.1

    1. -Level 2 about done
    2. -Level 3 sneak peek (with a new enemy and a new type of spike hazard)
    3. -A bit of rework of the player's movement and a bit of rework for movement on slopes, now it's a bit less dependent on artificial rotation constraints
    4. -A bit of rework on the camera system, it now clips a bit less in areas such as tight spaces and when the player is near high walls
    5. -Crude main menu
    6. -Pause popup
    7. -A few fixes and tweaks, some perhaps being credited to a newer Godot build
  • Ace_DragonAce_Dragon Posts: 323Member
    edited December 2018

    You may have noticed any new updates for a while. I can assure you though it's mainly due to all of the art related stuff I do with Blender Cycles. I haven't run into anything with the recent Godot 3.1 builds that would cripple progress.

    I've been doing off and on work with level 3 and a key new mechanic where you can try to collect a bunch of green objects in a certain time limit (with the reward being disabled red point objects being collectable).

    A couple of new things.

    Spike waves, level three contains spikes that rise and fall, I have a script where a group of these can be children of a node with a script to make them produce a wave effect.

    The new mechanics and larger levels are also generating more overhead for testing new stuff, I decided I would finally create a test playground like many commercial developers do. This helped me get non vertically-aligned springs working for starters.

  • Ace_DragonAce_Dragon Posts: 323Member
    edited December 2018

    At long last, I found time to get a new update pushed out. Proper pre-release versioning now (0.11).

    1. Level 3 about done, spikes galore and large indoor areas
    2. More work to make the camera less crappy in tighter areas (which was needed to make level 3 work properly).
    3. Timer challenges (one in each level). Completing them will unlock valuable red point objects (which will unlock bonus levels in the future).
    4. A new hidden trigger object to discover, the target is for at least one in each level beyond level 1
    5. New logic to place the procedural sun in different spots depending on the angle of the level's sunlamp.
    6. Various fixes and enhancements based on tests within the new test level (for one thing, level 3 has angled springs that work).
    7. New message trigger in level 2 on the use of the 'shoot' powerup.
    8. New object and enemy types for level 3 (like empty ice blocks, flying enemies, and a super spring).

    Get the newest version in the download links in the first post.

  • lawnjellylawnjelly Posts: 28Member

    I tried it on my Intel kaby lake core ii5-7500T with integrated HD630 graphics but it ran too slow to be playable (<10fps). Maybe having option to toggle to windowed mode or turn down some graphics might be good (not sure yet how easy it is to change graphics options on the fly in Godot).

  • Ace_DragonAce_Dragon Posts: 323Member

    Options to tone down a few of the graphical bells and whistles will come in a later version, something I have already done in my other project.

    How soon depends on how I balance the game creation hobby with my other interest in making art.

  • Ace_DragonAce_Dragon Posts: 323Member

    Version 0.12.

    Not a lot of changes in this version, but it does have the start of Level 4 and a working GUI for graphics options and the Credits.

    The Options mode in the Main Menu currently allows you to disable Anti-aliasing, disable lamp shadows, and disable Screen-space reflections (for a more low-graphics experience to ease the strain on weaker GPU's).

  • lawnjellylawnjelly Posts: 28Member

    I tried it again, this time with all the graphics options set to off in windowed mode frame rate was high enough to play :) .

    Some stuff: The menu items seem to be set for a certain screen size, they don't scale with the window size so the menu / message boxes were off the screen unless I increased the window size.

    I'm not quite sure what the logic was for the messageboxes telling you how to play, first times I played they appeared then disappeared so quickly I couldn't read them, I spent ages on top of the 1 & 2 platforms trying to work out what to do with them before I finally got the instruction to work so I could see to press enter.

    It has a lot of potential but I agree with MagicLord the weakest point is the player physics. It seems very laggy and unpredictable, which takes a lot of the fun out, if you could improve this it would be much better! :)

  • Ace_DragonAce_Dragon Posts: 323Member
    edited January 2019

    Some good news on the graphics front.

    I finally figured out the trick to make GI probes work, and this is an example of the results.

    Now I can have a good quality mix of exterior and interior lighting without having to abuse reflection probes (due to their local ambient lighting option). As a result, I disabled all reflection probes in favor of nice voxel reflections, which as a consequence eliminates nearly all of the stutter during gameplay.

    The GI probes are fast here because I'm not using the high quality option (which is too expensive for most GPU's).

    Meanwhile, I've been slowing working on Level 4. The work has been more off than on due to my obsession with trying to make perfect renders with Blender Cycles.

  • SchusterSchuster Posts: 369Member

    The new graphics looks great.

  • Ace_DragonAce_Dragon Posts: 323Member

    An update, no new builds yet though.

    I've been spending the last week trying to optimize the scripts for my game. Some of it may be my own inefficient coding practices and notable holes in GDscript knowledge revealed when I took a look at some of GDQuest's new Youtube videos. That being, using the "return" keyword to bail out of functions if certain criteria wasn't met and using smarter type checks for starters. So far, I have done dozens of smaller changes to the logic without breaking much in the way of everything, reducing the lines needed in some scripts and fixing up all of the red warnings and a number of yellow ones. Still, GDQuest seemed to reveal that I still have a long way to go before truly mastering the language.

    Another thing, I've been starting to replace the game's .dae asset files with .escn files using the in-progress Blender exporter branch for Blender 2.8. It is definitely the future of working with the engine and I should be able to move all my asset and level work to 2.8 as soon as some notable bugs with the specific I/O involved is fixed.

  • Ace_DragonAce_Dragon Posts: 323Member

    Another update, it turns out the major performance problem I've seen having was likely a Godot bug (because no amount of code optimization fixed it).

    A recent commit means the newest Godot daily build has my game running at 60 FPS on complex levels again :smiley:

    With that, I can safely let out a new build after getting level 4 fully tested.

  • MegalomaniakMegalomaniak Posts: 2,580Admin

    Great news, thanks for the heads up! You wouldn't happen to have a link to the commit handy by any chance?

  • Ace_DragonAce_Dragon Posts: 323Member
    edited February 2019

    Your buildbot did that build at this commit here.

    It should be noted that this is after Beta 5 official was released. I also don't know which commit suddenly sped the engine up to where it should be (for reference purposes).

  • Ace_DragonAce_Dragon Posts: 323Member
    edited March 2019

    New update (version 0.13)

    1. -Graphics upgrade with GI probes instead of reflection probes
    2. -New eyecandy; Trees.
    3. -Level 4 fleshed out and ready to go. Introducing a new enemy type as well as buttons to pound.
    4. -Various issues resolved due to the new test level
    5. -Various logic optimizations
    6. -New background music that plays when the level is completed
    7. -New logic to help the player stay on moving platforms more easily
    8. -Various other tweaks I can't bring to mind at this moment.

    Known Issues...
    1. -The logic which allows the new enemy to turn to you and attack is a little janky at the moment due to an issue with Godot, the report has been filed and confirmed and the 3.1 milestone is set. Hopefully it means it gets fixed.

    1. -I just remembered you can't turn GI Probes off in the main menu yet, I have an idea that would mean the reflection probe lighting method is used if GI probes are turned off). I used the lower quality tracing so it should be plenty fast on mid-range GPU's going up.
    2. -There is still no saving station as in the original version of the game. I hope to get that done when level 5 (which will also be the first boss level) is complete.

  • Ace_DragonAce_Dragon Posts: 323Member

    I'm still working on this on and off.

    The big thing this week was getting the first boss fully operational and fully working (ie. I tested a battle with him and the game does what it should). I am now getting past the point of where I was when I started the game in Godot 1.x.

    That also means the 5th level is about done, unlike levels 1 through 4, much of the old version is intact, but with sizable additions made to it.

  • Ace_DragonAce_Dragon Posts: 323Member
    edited April 2019

    Version 0.14

    Unfortunately, the most recent daily from Calinou errors out when exporting for Linux, so it's Windows only for now.

    1. Level 5 and its boss is about done
    2. Unification of enemy logic with the help of the new class_name feature and what it allows. This led to various fixes related to material changes, multi-hit enemies, and smashing.
    3. Improved sound logic in the player's movement
    4. GI probe tweaks to try to create higher quality lighting at a good performance.
    5. Yet another pass at better camera logic, rewrote the camera script so it's still a WIP.
    6. More textures and new details in a few levels
    7. Fixed the colors of various surfaces within the levels themselves.
    8. GI probes can be turned off in the options menu, the game will fall back to illumination via reflection probes.
    9. The saving station has been made, I haven't really tested but it's ripped from the functional system in Totally Lost.
    10. Smaller tweaks and other fixes.

    Known issues
    1. The new enemy will sometimes slip off the ground and fall out of the level

  • Ace_DragonAce_Dragon Posts: 323Member

    The newest builds of Godot master were getting a bit too risky to work in (due to new bugs and regressions from a mountain of pull requests merged). I decided I would go back to Godot 3.1.1 stable, and as a result could get a Linux build done.

  • Ace_DragonAce_Dragon Posts: 323Member
    edited July 2019

    Having been back to the nightlies, the project still has movement, though Cycles rendering in Blender, and the general struggle I have to just get things done has taken a lot of time. It's not due to Godot.

    I've been trying to get more into a good testing regimen for the game itself so that future builds will not have near as many things buggy or broken. I've been shifting more assets from the .dae format to .escn, and I'm finally able to have SSAO active thanks to a commit by Calinou that improved performance. Also, a number of scripts and other things have been tweaked and worked on.

    In addition, the environment is nicer looking now with a rendered HDR map instead of the simple procedural sky.

  • Ace_DragonAce_Dragon Posts: 323Member
    edited July 2019

    Version 0.16

    • The player and his components have been tweaked for perfect alignment and made sure the joints are connecting the nearest wheel to the body. As a result, the player handling is much better, smoother, and straighter.
    • A degree of SSAO has been added
    • Cleaned up a lot of old texture import files, so the total game size should be smaller.
    • (internal) a lot more collada files have been replaced with .escn files, some level-specific animations may have changed slightly since the level files were also replaced, but there are no major changes.
    • (internal) trying to set things up for better quality work in the future, figuring out a basic design language for scripting and having standards for node tree creation (which depends on if the scene is a level or an asset).
    • A rendered HDR map (which has different rotations on each level because of sunlight direction).
    • Some instanced objects now make full use of the GI probes, leading to less appearance of black surfaces
    • Other tweaks and fixes (the exits now work properly again for starters).
    • (preview) in progress bonus level, not a lot of testing yet as a result. You need to pass enough levels and get enough red point objects to enable.
Sign In or Register to comment.