CodeWalrus

Development => PC, Mac & Vintage Computers => Topic started by: 123outerme on October 15, 2017, 08:11:30 pm

Title: Gateway to Legend [pc]
Post by: 123outerme on October 15, 2017, 08:11:30 pm
Gateway to Legend is an open-source Puzzle-RPG. The main focus of the game will obviously be solving puzzles to get experience, as any Puzzle-RPG would have it, but the mechanics that make this game unique is that most puzzle mechanics will be based off doors or gates! Switches and door pairs allow you to gain access to rooms, teleporters provide gates between two places on the map, and more! It also supports the development and easy integration of user-generated content, as well; you can make puzzle map-packs for this project! I've done quite a bit of work on this engine so far, and I'd like to show it off. Here's what I have so far:

https://www.youtube.com/watch?v=wlcb_ouLAyY

Thanks to my friend, I have released a new update video for Gateway to Legend! I've added music! The main theme plays upon launching the game. There will be 3 overworld pieces. The boss theme plays upon triggering a boss. We also have plans for more tracks than just those!
In this video, I show off the work I've done with enemies and pathfinding, music, and sound effects! I implemented sound for various things like doors, sword swings, selecting menu options, and more!

There are 3 enemy types: Fast but low damage and HP moving straight to you, slow but higher damage and HP, taking a slower, more methodical path, and a third, which totally ignores collision.

There's also a map-pack wizard that helps user-generated content, as far as the programs go. I need some help drumming up some ideas for many different sections of the game, so I have my Github repository over here (https://github.com/123outerme/Gateway-to-Legend), and I would very much appreciate any help from the community, from suggestions, to offering to help with code. This project will be pretty big and pretty complex!

Other Stuff:
* Join my Discord! (https://discord.gg/7SE9k4n) I post more frequent updates there.
* Take a look at my website I wrote! (https://123outerme.github.io/Gateway-to-Legend/)
* See my GameJolt Page! (https://gamejolt.com/dashboard/games/311830)
Title: Re: Gateway to Legend [pc]
Post by: gameblabla on October 15, 2017, 08:59:09 pm
I see that you are reusing a lot of your previous code from Sorcery PC.
In fact, it looks like you are instead attempting to revamp your old code rather than start from scratch.

Btw, you forgot to put the fonts from previous game in Gateway.

Title: Re: Gateway to Legend
Post by: 123outerme on October 15, 2017, 10:19:21 pm
I see that you are reusing a lot of your previous code from Sorcery PC.
In fact, it looks like you are instead attempting to revamp your old code rather than start from scratch.

Btw, you forgot to put the fonts from previous game in Gateway.
Yeah I'm trying to reuse what worked and rework what didn't. No need to reinvent the square wheel on this one. I did forget to include the font in here, let me change that now.
Title: Re: Gateway to Legend
Post by: 123outerme on October 19, 2017, 01:25:43 am
https://www.youtube.com/watch?v=91QdFtowGN4

Here's my new progress! You can see that all the "event" tiles, or puzzle mechanics, are displayed onscreen. I also implemented button and door behaviors, with framework to do the same thing for each tile. I also did a lot of work on the map toolchain, making it so that each program can be compiled with the same header file(s), meaning no extra bloat in the build directory, among other changes like always displaying event tiles there too.
Title: Re: Gateway to Legend
Post by: xlibman on October 20, 2017, 04:26:22 am
I like the idea so far and I definitively notice the inspiration from SoU. The graphics look cool together by the way.
Title: Re: Gateway to Legend
Post by: 123outerme on October 20, 2017, 08:52:13 pm
I like the idea so far and I definitively notice the inspiration from SoU. The graphics look cool together by the way.
Thanks! I actually took my tiles from quite a few cancelled projects including 2Arms, my failed RTS/Turn-based Strategy and a cancelled platformer called Fisiks, both being started before SoU. The player sprite is the only one I may not keep for my main map pack. I think he'll fit in with the story just fine, but I'm not quite sure.
Title: Re: Gateway to Legend [pc]
Post by: 123outerme on October 21, 2017, 10:57:38 pm
https://www.youtube.com/watch?v=_9e_5yKCHtk

I have some new progress to display! This screenshot, I made some decently big progress on the engine! I added the ability to write scripts for your maps. Scripts are versatile lines of data that define behavior of a certain map. In this case, I showed a script that warps the player to any other map, in any other coordinates. This is a "use portal" script, which, when stepping on a warp gate tile with defined behavior, shows a fading animation like I displayed, then puts the player in a new map. The warp gate script will be used to very good effect in the main map-pack, and map-makers will obviously be allowed to use this script to its fullest as well! You may ask how the warp gate is a mechanic worth showing, and I concede, it's not exactly a mechanic. However, the freedom that the warp gate script, and scripts in general, provide is enough to get me excited. When I start developing the main map-pack for real, you will be convinced on how to effectively use such a device.

Other script behavior has already been defined, such as a dialogue script, which displays the specified line of text upon triggering the event. I haven't written it yet, but there will be some sort of script editor. Whether that's included in the map editor, its own seperate tool, or whatever, it will exist.
Title: Re: Gateway to Legend
Post by: xlibman on October 23, 2017, 01:12:09 am
I like so far. My suggestion would be to add a character animation when he walks around ^^
Title: Re: Gateway to Legend
Post by: 123outerme on October 23, 2017, 08:52:39 pm
I like so far. My suggestion would be to add a character animation when he walks around ^^
That's a good suggestion! My only concern with that is that map-makers will have to define at least one more sprite in their map-pack file (which is an automated process, thanks to the map-pack wizard, but still, not optimal). If I did that, I'd probably have only two or three frames of animation total, just to keep things simple.
Title: Re: Gateway to Legend
Post by: 123outerme on December 01, 2017, 10:40:18 pm
https://www.youtube.com/watch?v=qAI4QzvIFrc

Here's a look at a little bit of work I did on this today! I added an HP display, removed FPS counter (you can bring it back by pressing a certain key, although I haven't decided which key yet), and added the functionality to spikes! Spikes reduce 1/4 of a heart in damage per contact, and you are also thrown back in the direction you moved. This is done by increasing your velocity so that you are automatically moved. This velocity system I put in place will also be used for enemies and maybe some more puzzle mechanics.
Title: Re: Gateway to Legend
Post by: xlibman on December 02, 2017, 07:16:24 am
This looks cool. I lol'ed at the Stop Dying text tho XD

I'm glad this is still being worked on
Title: Re: Gateway to Legend
Post by: 123outerme on December 02, 2017, 06:15:36 pm
This looks cool. I lol'ed at the Stop Dying text tho XD

I'm glad this is still being worked on
Thanks! I'm glad I'm still making progress too, however slow. I made that map pack entry when testing my map-pack header wizard, and I liked the name, so I think that's one I'm going to make. I have at least one more idea that I'm keeping secret for now, but I think both will turn out great. Of course, I need to make the main campaign first.
Title: Re: Gateway to Legend
Post by: 123outerme on January 13, 2018, 12:42:28 am
https://www.youtube.com/watch?v=JG0TJ1kSa78

Here's my new update! I finally bit the bullet and implemented enemies in their entirety, after months of practically radio silence on the matter. Yes, if you're wondering, POTY 2017 did motivate me to get working again, among other things. Enemies can collide with you, knocking you back and dealing damage, collide with the sword, dying (although in the future I will have some enemies have more HP, taking damage and getting knocked back as well), and not shown here and not implemented quite yet, collide with the environment. Every enemy will have some sort of special attributes.

For right now, the implementation of the special attributes is: the bird does not collide with the environment and does minimal damage, while flying straight at the player. The stone ent attacks like a rook; it tries to line itself up with the player's left-right, then attacks, does good damage, and moves rather slowly. The slime enemy has yet to be implemented fully.

I think I may change this around, especially as map-packs will be using different tiles for the enemies. I would like to make each enemy's behavior individual, yet generic enough so that a multitude of enemy appearances can fit the same type.
Title: Re: Gateway to Legend
Post by: xlibman on January 13, 2018, 12:49:33 am
I liked when you got hit by an enemy and bounced off very fast. You should also add special moves where you dash into a certain direction ^^
Title: Re: Gateway to Legend
Post by: 123outerme on January 13, 2018, 12:51:24 am
I liked when you got hit by an enemy and bounced off very fast. You should also add special moves where you dash into a certain direction ^^
That's a really good idea! I was trying to think of some sort of rewards for the progression system that I could add, and special moves sounds like a really good idea! I'll definitely write that down.
Title: Re: Gateway to Legend
Post by: 123outerme on January 14, 2018, 03:49:03 am
https://www.youtube.com/watch?v=vk7_W1R1Sdo

I have successfully implemented my own home-grown (yet not really unique) pathfinding algorithm! Enemies 1 and 3, or the bird and the stone giant. The 2nd enemy, the specter, can walk through collision. They (mostly) take the shortest path to the player from their starting position, and do it pretty fast too! With 2 enemies utilizing the routine, and a 3rd one moving without it, I get an uncapped FPS of about 450, which I find very impressive.The algorithm I used was just a flash-fill that takes data from the eventmap and plots a path through without colliding with walls, although I may extend that to not collide with other things such as portals, spikes, etc.

I'm really proud of it, as in 8 hours I went from not knowing anything about pathfinding to implementing my own into my game. I'm glad I could get it to work and the euphoria after realizing it worked was gold.
Title: Re: Gateway to Legend
Post by: 123outerme on January 17, 2018, 09:27:42 pm
https://www.youtube.com/watch?v=bvnO3Z9Sf5E

Here I've implemented sound effects! No music yet, that's coming real soon, though! I bitcrushed royalty-free sound effects and did other wacky things to give them the feel I wanted. I have sound effects for doors, gateways, sword swings, selecting menu options, walking, with more coming soon! Finally, no more silent-treatment from my PC games. Let me know which sound effects you like and dislike, and I'll do my best to make them better.
Title: Re: Gateway to Legend
Post by: 123outerme on January 20, 2018, 09:35:19 pm
So right now, I'm reworking the main tilesheet to be 48x48, instead of 8x8 (upscaled x6). I figured I might as well show off everything the engine can do, including the resolution it can play at. I haven't made every tile yet, but I have done a few. I updated the spike tile in the upper left, the heart icon, the portal sprite (although I may not be done with that one), the sword, and the grass. I still have most of the tileset to do, but I figured I'd show off this progress. Here's some of my work so far:

(https://i.imgur.com/NQbLpYSh.png)


I intend to keep this cartoony style for the most part. It's not only easier for someone who isn't really an artist, not only the way my 8x8 tiles looked, but I think it fits pretty well. I would like to hear any criticisms or suggestions you have to offer! Any praise is welcome, as well ;)

As for work on the engine, nothing crazy has been added or removed, yet. I have big plans for features, such as fully-customizable boss behaviors, implementing new events and puzzle mechanics, adding dialogue, and more. The maps featured right now in the Main Adventure map pack are mostly test maps. The work on the real Main Adventure will come in time, mostly once I'm finished a lot of the big features.

RPG mechanics will most likely be present. I'm thinking pretty much just money and Exp as the two point systems in place, but probably nothing more, if just that. I don't exactly know if I even want Exp in the first place, and I'll have to see how it will play out. The money will for certain be in, and will most likely be used to buy techniques, items, and other goodies I haven't yet decided on.
Title: Re: Gateway to Legend
Post by: 123outerme on January 22, 2018, 03:38:43 am
https://www.youtube.com/watch?v=rEs1FGD37nw

I finally finished my work on my tileset after a weekend of working on it, so here it is! I took what little art talent I have and upscaled the graphics. I previously used 8x8-sized tiles for the "main" map-pack, but figured I could do better. After all, if the game can display up to 48x48 tiles, why limit myself? I agree that some things may need work, and I will continue to look at and improve the tileset. Another point of potential ugliness is the maps I'm using right now; the maps will soon be remade and will look better than they do now!

Here's a list of things that are coming up in the somewhat short-term, in no particular order:

* Redoing the menu palette
* Script editor; "scripts" are lines of data that dictate where and when certain things like warping, etc. happen, so a easy-to-use editor for myself and other map-pack creators is coming!
* More sound effects
* Music
* Currency and the currency store, as well as potentially Exp
* Actual options to change the FPS, volume, etc.
* Bosses and customizable boss behavior
* Local saves holding more data so that some sort of permanent state is kept between rooms
* More types of events such as dialogue, scene scripting (!), etc.
* More engine work
* Probably redoing some of my 48x48 tiles


As well, here's my goals for the long term, in the same unordered fashion:

* Release a beta version with a complete toolchain to give everyone a head-start on making maps
* Finish the main map-pack
* Release the finished version alongside a few more map-packs (secret projects!)
Title: Re: Gateway to Legend
Post by: xlibman on January 31, 2018, 06:48:29 pm
This is progressing very nicely 123. :3=
Title: Re: Gateway to Legend
Post by: 123outerme on February 10, 2018, 08:16:27 pm
This is progressing very nicely 123. :3=
Thanks xlibman! I have taken a long break and got pretty sidetracked. I recently fully implemented dialogue boxes, and now there are two types: infinitely available, and one-time-read boxes. One-time-read boxes reset when you save & quit out of the map-pack, but I probably won't leave it like that. All you have to do to see the dialogue is stand inside the script's bounding box and press Interact (default Space) and you get a nice text box!

However, I have been working on something a little better. I'm making a webpage for my game! So far it's extremely basic and a little bit void of interesting things. I'm adding screenshots, information, my personally-authored map-packs, and more. If you want to see what it looks like so far, I've got it right here: https://123outerme.github.io/Gateway-to-Legend/
Title: Re: Gateway to Legend
Post by: 123outerme on February 25, 2018, 03:26:20 pm
Gateway to Legend gains an important feature today: Programmable bosses! Bosses have now been implemented, which exist as script objects. They can be virtually any size (although largest I recommend is 4x4 or maybe 5x5), use any tiles from your tileset, and move in any pattern!
Boss movement is programmable, so you can define any way that the boss moves! An easy one would be back and forth, which is: [(6,0) for 20 frames / (-6,0) for 20 frames]. Although in the script it would look like this: (6|0|20|-6|0|20)
For this video I defined a 2x2 boss that moves in a square. Bosses don't have to be square too, they can be any rectangular shape.

https://www.youtube.com/watch?v=1iTloSgHxTw

In the video, I also show off the new menu "click" sound, the dialogue script, the hurt/healing field script (which was where I got damaged randomly in the ice world), and older features as well.

Here's what my progress list looks like now:

* Redoing the menu palette
* Script editor; "scripts" are lines of data that dictate where and when certain things like warping, etc. happen, so a easy-to-use editor for myself and other map-pack creators is coming! (just needs one more feature to be fully functional)
* More sound effects
* Music
* Currency and the currency store, as well as potentially Exp
* Actual options to change the FPS, volume, etc.
* Bosses and customizable boss behavior
* Local saves holding more data so that some sort of permanent state is kept between rooms
* More types of events such as dialogue, scene scripting (!), etc.
* More engine work
* Probably redoing some of my 48x48 tiles


Here's my goals for the long term:

* Release a beta version with a complete toolchain to give everyone a head-start on making maps
* Finish the main map-pack
* Release the finished version alongside a few more map-packs (secret projects!)
Title: Re: Gateway to Legend
Post by: 123outerme on March 18, 2018, 03:32:52 am
I've been working on this still, even though I've been rather silent. What's here isn't even a big update, but I've been preparing the engine for several more big things. After those, almost all work on the engine is finished, and then off to map-pack making, which should hopefully be easy after all the work I did on the toolchain program.

https://www.youtube.com/watch?v=SgfTBjMjQ24
I did a lot of "grease" work, aka lots of engine work for things you won't directly see. I've been working to ensure the Linux/GNU version actually runs, reorganizing some code I made before this project, and more stuff. Here, I actually get to show it off. I've added text input, so instead of having to input various data in the command line, you no longer need that. Another thing I did was revamp the Gateway transition slightly and added a boss into transition.
Title: Re: Gateway to Legend
Post by: c4ooo on March 18, 2018, 03:44:33 am
hey (mostly) take the shortest path to the player from their starting position, and do it pretty fast too! With 2 enemies utilizing the routine, and a 3rd one moving without it, I get an uncapped FPS of about 450, which I find very impressive
Ideally you should use VBOs and shaders for all rendering and do the enemy AI in a separate thread. Even if not exactly necessary for this project, as you get enough FPS already, learning how to "properly" render with VBOs and shaders will be a big help for more advanced SDL/openGL projects ;)
Title: Re: Gateway to Legend
Post by: 123outerme on April 01, 2018, 06:03:09 pm
I have released the Pre-Release 1 build publicly! This includes the base game, what I have completed of the toolchain, and one map-pack! See it for yourself:

https://www.youtube.com/watch?v=yh4gUomClV8

Download here:
https://github.com/123outerme/Gateway-to-Legend/releases/tag/v4.1.18

Edit: The link above sends you to the April Fools' Day demo, which is a fully-functioning demo, but only had an April Fools' teaser map-pack. To get the real demo, download here: https://github.com/123outerme/Gateway-to-Legend/releases/tag/v4.3.18
Title: Re: Gateway to Legend
Post by: _iPhoenix_ on April 05, 2018, 03:52:55 am
@123outerme is letting me create (some? most? all? arbitrary amounts?) of the soundtrack for GTL!
 
Via WalrIRCord, I posted one of my short experiments with creating ambient music. I offered to help 123outerme with the soundtrack because I am going to have decent amounts of spare time in the coming week(s).

Today I made three tracks that are designed to be loopable, so that they can be cut off easily.

I'm not going to post them yet, because it is entirely up to 123outerme to decide which tracks he will use. All tracks he doesn't use will most likely find a home in a certain music thread of mine.

The tracks I created today were a pair of simple ambient tunes, relatively short. The other one is heavily influenced by Japanese music, but I added a Latin twist to it because why not.

Title: Re: Gateway to Legend
Post by: 123outerme on April 05, 2018, 11:58:29 pm
Thanks to my friend, I have released a new update video for Gateway to Legend! I've added music! The main theme plays upon launching the game. There will be 3 overworld pieces, at least some provided by @_iPhoenix_ . The boss theme plays upon triggering a boss. We also have plans for more tracks than just those!
As well, I added some new graphics, including particle effects, a splash screen, and more. Finally, I merged the former toolchain program into the main executable.

Watch here:

https://www.youtube.com/watch?v=wlcb_ouLAyY

As it turns out, I'm getting scarily close to releasing, without realizing! I've completed most of the main engine work. Music is chugging along nicely, sound effects are nearly complete, the toolchain is almost done, and game design work is almost finished! I have to finish creating some map-packs, and then I should be extremely close to being finished!
Title: Re: Gateway to Legend
Post by: 123outerme on April 21, 2018, 02:49:05 pm
I've added smooth scrolling, after much request for it. After two RPGs that handle only screen-sized maps, I have finally added a much-requested feature!

https://www.youtube.com/watch?v=nDlv2Shm5ok

As well, I have added @_iPhoenix_ 's overworld music, fully integrated the map-pack toolchain, and more!

Music is almost done. I need one more track. The engine is almost done. I need to implement one more type of script, fix any bugs, and a few more things. The toolchain is almost done. I need to implement a few more features and allow two more script types to be fully edited. The only facet of the game I have any substantial amount of work left for is map-packs. Again, I have lagged behind making maps. Not because it's hard, but just because every time I go to make maps, I remember a feature that I wanted to implement before making the map :P
Title: Re: Gateway to Legend
Post by: xlibman on April 22, 2018, 05:43:41 pm
I love that sword and logo on the title screen :D

Also I like the music :D

Btw, if the engine already supports NPCs and event blocks/variables/switches, then maybe I could try to do a small game xd
Title: Re: Gateway to Legend
Post by: 123outerme on April 23, 2018, 12:51:05 am
I love that sword and logo on the title screen :D

Also I like the music :D

Btw, if the engine already supports NPCs and event blocks/variables/switches, then maybe I could try to do a small game xd

Thanks! I'm happy with the way it's all turning out so far.
As for the engine, NPCs are supported. Events such as cutscenes have yet to be added, but are planned, and variables could be added, but as of now they aren't planned.
Title: Re: Gateway to Legend [pc]
Post by: _iPhoenix_ on April 23, 2018, 07:38:13 pm
The art style is very interesting. It's almost like the halfway point between high-res and the low-res, pixel-art graphics. It would be really cool if you were able to switch between the old, pixel-art graphics and the new, more smooth graphics.


If you do decide to do the high-resolution graphics, I recommend having multiple versions of each tile, each being slightly different in some way. This adds variation against a sea of the same color. I particularly think that natural things, like the grass and trees, should have different variations.


Also, the aliens disappear when you scroll. Is that intentional?
Title: Re: Gateway to Legend
Post by: 123outerme on April 28, 2018, 03:47:01 pm
The art style is very interesting. It's almost like the halfway point between high-res and the low-res, pixel-art graphics. It would be really cool if you were able to switch between the old, pixel-art graphics and the new, more smooth graphics.


If you do decide to do the high-resolution graphics, I recommend having multiple versions of each tile, each being slightly different in some way. This adds variation against a sea of the same color. I particularly think that natural things, like the grass and trees, should have different variations.


Also, the aliens disappear when you scroll. Is that intentional?
Thanks! I plan on having two tilesheets available to map-pack makers. There's the 48x48 tileset, the one you see in all the screenshots, and the 8x8 (upscaled * 6) tilesheet. I could possibly implement a switching of tilesheets while playing a map-pack, but that might get pretty confusing. I also intend to go back over my tilesheet and add more variations, like you suggested.

The enemies disappearing when you switch maps is actually not intentional. I finished the graphical scrolling of the background, and saw it was done. I'm not sure if I want to keep it like this, though, because if an enemy moves from its starting position while you switch into a new map, the enemy will reappear at its starting postion, which may be a little confusing. The second map will have its enemies in the right place, though.