HCGE Multiplatform Game Engine + Sonic, Mega Man, [...]

Discussion in '3DS - Homebrew Development and Emulators' started by HCStealth, Dec 8, 2014.

  1. HCStealth
    OP

    Newcomer HCStealth Newbie

    Joined:
    May 14, 2014
    Messages:
    8
    Country:
    United States
    TL;DR:

    Headcannon Game Engine provides editing utilities and a script system that help Windows, Linux, and MacOSX users develop 2D games of various types for those and several other platforms, even without access to all supported platforms. Also, there are already a few games to play. Check the sections below for more information, links, images, and videos

    Introduction:

    Hi!

    I've just finished a reasonable build of my HCGE Multiplatform Game Engine for 3DS Homebrew Launcher and thought I'd share it. It isn't exactly a formal release since I still want to improve it before it becomes "official", but in its current state, it should still be useful and fun. You can play the existing games on 3DS, or get a jump-start on developing a homebrew 3DS game regardless of whether you own one or can access The Homebrew Launcher

    If you take the time to read about it and check it out, thank you very much, and have fun!

    There are two versions available:

    - With Sound
    - Without Sound

    If you make a game with HCGE, you can choose either build to distribute it with as stand-alone

    Many current games are not distributed stand-alone. To install a game, download from the links provided in the later sections and unrar their contents into the same folder in which you placed "HCGE.3dsx". Both the game folder and the contents of the "gdf" folder are necessary, so if prompted to "overwrite the gdf folder", choose to allow, and the gdf file for the game you're installing will be placed into it along with any others

    If copying games to your 3DS using FTPony, please double-check that all sub-folders were copied correctly; it seems to omit some of them sometimes on mass-copies. If HCGE exits immediately, this might be why. Opening "Error.txt" in the HCGE folder can help you figure out what's missing

    In-game, tap the touch-screen to return to the main menu. In the main menu, tap the touch-screen to exit HCGE

    If you've downloaded any of these games before:

    You will need to re-download them for 3DS support. All games and HCGE build packages have been updated for this, and the updated packages are necessary to run the updated games on any other platform. They aren't flagged as updates for the update system, though, because there are no other significant changes - this is only for 3DS support. You will, however, receive the updated versions if you use any other platform build's internal download system, and games downloaded using that method from this point on can be used with the 3DS build (by copying the game folders and GDF folder to the HCGE folder on your 3DS in the same manner that you'd copy the manually-downloaded files)

    There are a few known issues specific to the 3DS build:

    - Sound sort of crackles. I haven't seen any clear information regarding creating a streaming buffer, and since I mix sound in software, this is probably the result of the method I use - attempt to fill enough audio for 1/60th of a second and play on each frame. The CSND_LOOP_ENABLE setting doesn't seem to work, and I don't know if there's a way to determine the playback position of a channel

    - Some areas of some games are a bit slow. Since the 3DS is slower than most platforms that HCGE runs on, this is bound to happen when a level or other parts of gameplay become more complex, however, one major issue is that the sound is currently being rendered in the main thread along with the rest of the game. I assume that, barring other optimizations, running the sound in a separate thread should have comparable performance to the faster "Without Sound" build, but, I don't yet know how to create a separate thread for it

    - For me, exiting seems to frequently cause the Homebrew Launcher to act as if there's no SD card when you return to it. I have no idea why

    - The downloads and updates system from other net-supporting platforms is missing. The method uses sockets, and I don't seem to have enough information to successfully use sockets on 3DS

    If anyone can provide any information regarding any of this, I'd very much appreciate it

    If you've never heard of HCGE before, here's what it's about:

    HCGE is a multiplatform game engine that can be used to create retro-style 2D games. Supported platforms include Windows, Linux, MacOSX, PSP(CFW), Wii(Homebrew Channel), GP2XWiz, GCWZero, and now, 3DS(Homebrew Launcher)

    The PC Windows, Linux, and MacOSX versions serve not only as the engine with which to run the games, but also the SDK with which they can be created and modified. The built-in editors can be entered during gameplay and used to test live modifications or just modify and save for permanent changes, and they, as well as a few other useful tools, can be accessed from the main menu

    An overview of development features with links into relevant portions of the documentation can be found on the official home page. Also of interest is the Getting Started document, which serves as an entrypoint to the documentation

    Because the documentation serves as a complete reference manual rather than any sort of tutorial, actual tutorials for individual aspects of usage will be prepared as time permits. Aside from open example projects, there will also be more step-by-step explanations, such as the current introduction video:


    The following options are also available to receive support and assistance:

    The official Headcannon forum
    The official Headcannon IRC channel

    Please feel free to visit either of these for discussion or help, or even to help others once you've become more acquainted with HCGE. I will provide support through both channels as time permits

    Three such discussions are already in-progress, and contain a ton of information written in a more narrative manner:

    http://www.headcannon.com/Forum/viewtopic.php?f=12&t=114
    http://www.headcannon.com/Forum/viewtopic.php?f=12&t=119
    http://www.headcannon.com/Forum/viewtopic.php?f=12&t=122

    As for existing game examples:

    Currently, there are two open game examples for HCGE. The first is the very basic General Game Template, which contains only enough script and data to start up as a game and display something on-screen. This template can be used as a basis upon which to build a brand new game basically from scratch


    The second open game example is a well-featured Sonic the Hedgehog game. All scripts and data are provided unprotected and can be modified or used to build either a new Sonic the Hedgehog fan game or something entirely different. Various portions of this game serve as examples of many of the features of HCGE, and the game itself is pretty much "complete", as it contains a title screen, a character and level select menu, completable levels with items, enemies, and even bosses, as well as a Bonus Stage, and Special Stages with randomly-generated layouts. In Fact, there are enough opportunities provided in the Gemstone Garden level to enter the Special Stage for a skilled player to obtain 7 Chaos Emeralds, and thus, Super Sonic


    Other open examples, both generalized and based on existing IPs, are in the works, including those demonstrated in this video:


    Other in-progress game projects are also available:

    The open Sonic the Hedgehog example described above is based on scripts that were originally created for the game "Sonic the Hedgehog: Project Mettrix", which I currently don't have a dedicated video for

    [​IMG]

    Also in-progress is the game "Mega Man: Triple Threat", featuring playable Mega Man, Proto Man, and Bass, made in the SNES Mega Man 7 style with new levels and Robot Masters. An open Mega Man example will eventually be created using some of the basic scripts and data that were used to make this game


    And finally, we are developing a brand new IP thanks to some inspiration from the December 2013 Ludum Dare event: Fantastic Franklin. This game is a puzzle-platformer in which you play as the titular character Franklin who has to dig, climb, push, and carry his way through each level to guide a giant egg safely to the exit

    As the game was developed in 72 hours, it is somewhat buggy and content is currently minimal, but it does contain one fully playable and completable level sandwiched between a title screen and a closing screen. This will eventually become a full-sized, commercially-available game with many more levels, gimmicks, and enemies, as well as some tweaked mechanics and graphics, music, and other essentials

    Because there is not yet a formal release, you'll need to download the newly-created 3DS build from this link. This build also serves as an example of the fact that a completed and standalone HCGE game can be distributed and made to run without first having to enter the main menu interface

    [​IMG] [​IMG]
    [​IMG] [​IMG]
     


  2. cearp

    Member cearp the ticket master

    Joined:
    May 26, 2008
    Messages:
    7,210
    Country:
    Tuvalu
    crazy stuff! thanks for all the hard work!
     
    Margen67 likes this.
  3. VinsCool

    Member VinsCool Loves Red Wine

    Joined:
    Jan 7, 2014
    Messages:
    10,655
    Location:
    Another World
    Country:
    Canada
    Wow that looks fantastic :O
     
    Margen67 likes this.
  4. Belmondo

    Member Belmondo GBAtemp Regular

    Joined:
    Jul 24, 2007
    Messages:
    103
    Country:
    New Zealand
    Very very nice. thanks for your work on this :)
     
    Margen67 likes this.
  5. descac

    Newcomer descac Advanced Member

    Joined:
    Oct 7, 2014
    Messages:
    88
    Country:
    United States
    Respect. MD/GEN Sonic engineering is fascinating.
     
    planetarian and cearp like this.
  6. ubergeek77

    Member ubergeek77 Post editing world champ.

    Joined:
    Dec 6, 2014
    Messages:
    551
    Country:
    United States
    Wow. This is very impressive, shocking too. The games do love their load times, but it's a huge step in the right direction.

    Thanks!
     
    Margen67 likes this.
  7. Melon__Bread

    Member Melon__Bread ~It's A Magik~

    Joined:
    Dec 9, 2013
    Messages:
    709
    Country:
    United States
    I love how this also targets the GCW ZERO
     
  8. piratesephiroth

    Member piratesephiroth I wish I could read

    Joined:
    Sep 5, 2013
    Messages:
    2,687
    Country:
    Brazil
    This is excelent. Now we can get decent homebrew games.
     
  9. Silentsurvivor

    Banned Silentsurvivor Banned

    Joined:
    Sep 13, 2009
    Messages:
    249
    Country:
    United States
    This is some mindblowing stuff right here
    I'm extremely interested
     
  10. piratesephiroth

    Member piratesephiroth I wish I could read

    Joined:
    Sep 5, 2013
    Messages:
    2,687
    Country:
    Brazil
    HCStealth, you should include the elf file in the distributions.
    3dsx isn't a universal standard.
     
  11. ChrisX930

    Banned ChrisX930 Banned

    Joined:
    Sep 3, 2013
    Messages:
    788
    Location:
    Germany
    Country:
    Germany
    Are there already working games for this? How to install and play them?
     
  12. piratesephiroth

    Member piratesephiroth I wish I could read

    Joined:
    Sep 5, 2013
    Messages:
    2,687
    Country:
    Brazil
  13. ChrisX930

    Banned ChrisX930 Banned

    Joined:
    Sep 3, 2013
    Messages:
    788
    Location:
    Germany
    Country:
    Germany
    okay, it works! :D
    I like it! It's a little bit laggy sometimes, but I think this will be fixed sometimes :D
     
  14. ChrisX930

    Banned ChrisX930 Banned

    Joined:
    Sep 3, 2013
    Messages:
    788
    Location:
    Germany
    Country:
    Germany
    I have uploade a Video where I'm testing it on the 3DS
     
    zeldaism, SLiV3R, sup3rgh0st and 2 others like this.
  15. ubergeek77

    Member ubergeek77 Post editing world champ.

    Joined:
    Dec 6, 2014
    Messages:
    551
    Country:
    United States
    Is there a way to get the games to display on the top screen? Is it a planned feature?
     
  16. Flame

    Member Flame Me > You

    Joined:
    Jul 15, 2008
    Messages:
    3,547
    Country:
    HCStealth please release a .3ds or .cia file... for people without cubic ninja.
     
    piratesephiroth likes this.
  17. Shadowtrance

    Member Shadowtrance GBAtemp Addict

    Joined:
    May 9, 2014
    Messages:
    2,482
    Location:
    Hervey Bay, Queensland
    Country:
    Australia
    To be fair [user]Flame[/user] if you can run .3ds or .cia you can run ninjhax hbmenu via cubic ninja cia or 3ds.

    But that aside, other options for directly running are always good. :)
     
  18. titegtnodI

    Newcomer titegtnodI Advanced Member

    Joined:
    Nov 25, 2014
    Messages:
    82
    Country:
    Canada
    HCStealth: "- For me, exiting seems to frequently cause the Homebrew Launcher to act as if there's no SD card when you return to it. I have no idea why"

    You likely just need to update your homebrew menu or/and ctrulib as 99% of SD reading issues have been fixed.
     
  19. Xeeynamo

    Newcomer Xeeynamo Newbie

    Joined:
    Aug 18, 2011
    Messages:
    5
    Country:
    Italy
    Great work! I follow you and your E02 from a very long time (2009 or before) from SonicRetro and other forums. It's nice to see other portings of your powerful engine. The 3DS it's good platform to host it :).
     
  20. alexenochs

    Member alexenochs GBAtemp Fan

    Joined:
    Aug 30, 2010
    Messages:
    420
    Country:
    United States
    I too would like to see a .CIA version of this I wonder if gateway with support .3dsx someday lol
     

Share This Page