Legend of Fordham Forest (Version 0.2 Demo Release)

merrak

  • *
  • Posts: 2524
T h e   L e g e n d   o f   F o r d h a m   F o r e s t
Last update: Version 0.2 (Demo) - 2016-03-09




Meet Merci, the praying mantis, and her friend Romy, the lightning bug. They are about to set off on a quest to explore the dark corners of "Deep Cavern", a vast network of underground tunnels. What tales will they bring back? Join Mara as Merci recounts her story of their journey.


Romy and Merci are in pursuit of the "Sulfur Demons"--a mysterious enemy of volcanic origins. The great volcano lies in the distance, guarded by a demonic gate and surrounded by a hostile terrain. They have heard stories of fields shimmering of gold, the burning river, and bats that breathe its fire. Which of these stories are true? How will they cross the fields, ford the great burning river, and pass the Gate of Iron and Sulfur? It's up to you to decide their fate. Will they reach the volcano--and if so, what will they find within?


The Legend of Fordham Forest combines a role-playing game with 2D physics elements. As Romy and Merci travel through Deep Cavern, they will meet assorted allies. Help them raise their army and work their way through the treacherous terrain. Can they learn the unique strengths and weaknesses of each character, and concoct a scheme to pass every obstacle? Will they be able to navigate a wide array of tricks and traps? The "Sulfur Demons" can be cunning! Can Romy and his friends come out on top? The world of Deep Cavern is waiting for them--and you--to explore!


Original Post from 2015-09-30

I started a launch/catapult type game, mostly as a toy for myself whenever I needed a break from the isometric game. After my LD game gave me some inspiration for a graphical style, I started adding more to it. I'm pretty happy with it so far, and I think I'll promote it from "toy" to "actual game". Shooting for a playable demo, soon.

A quick summary: Guide Romy, the lightning bug, and his friend Merci, the mantis, as they explore the depths of "Deep Cavern". A mysterious enemy has emerged from the cavern and is burning the villages of "Outer Cavern". Raise an army of your fellow insects to confront the foe. Can you make it to the end of Deep Cavern and learn the origins of the "sulfur demons"?

Screenshots:

http://anorthogonaluniverse.com/misc/loff/2015-09-30-02.png
http://anorthogonaluniverse.com/misc/loff/2015-09-30-03.png
http://anorthogonaluniverse.com/misc/loff/2015-09-30-04.png
http://anorthogonaluniverse.com/misc/loff/2015-09-30-05.png
http://anorthogonaluniverse.com/misc/loff/2015-09-30-06.png

« Last Edit: March 08, 2016, 07:48:36 pm by merrak »

SquarePug

  • Posts: 148
Looks awesome, has a strong theme to it that could definitely support a good story.
Website: Satch
Twitter: @satchapps.

Nikkita31

  • Posts: 130
OI Merrak.

This is really looking nice.  8) I love this one.  When you're done, You should let us play this game.

- Renegade Gamez.

petersdream

  • Posts: 94
Great stuff Merrak, looks very promising. I am very curious how this develops.

Keep us posted & good luck
Indie Game developer (at night). Currently working on his dream game for iOS.
@petersdreamgame



merrak

  • *
  • Posts: 2524
Thanks! :D

Parts of the story were removed from a novel at my editor's recommendation (it was too much of a diversion). One of the things that motivated me to pick up Stencyl in the first place was the idea I could make games out of the little snippets I cut out. I've made a couple of efforts over the past couple of years, but I think I've learned enough about game development to give it a real go. I'm actually pretty close to a playable game.

The gameplay is similar to that of "Crush the Castle" or "Worms Armageddon", with RPG elements. I'm planning four 24-level episodes (with some secret levels and diversions, for a total of roughly 30 levels each). Episode 1, which is nearing completion, is designed to fit within the constraints of a Flash game. The other three will be mobile-only. That gives the mobile version about 120 screens. And, with plenty of opportunities for unique twists, there ought to be plenty of challenges and surprises in the full game.

merrak

  • *
  • Posts: 2524
Progress has been made  8)

I'm slowly getting all the UI and AI features in. Enemies fire back, but not very reliably. They can compute the force needed to fire a projectile at, but not detect if there is an obstacle in the way. I have a plan for an arch-based variant of ray casting, but haven't had time to implement it.

I have made it far enough that I could use some feedback on things like level design, the interface (what is annoying about it, needs improvement), and general game play. Level design is a big one. I have a feeling most of the levels will be temporary--but knowing what works and what doesn't would go a long way in designing the final versions.

So... any thoughts/feedback would be much appreciated   ;D

Legend of Fordham Forest - Demo 1


Instructions:

Assemble Romy's insect army and defeat the sulfur-demons of Deep Cavern!

Press 'r' to skip the opening sequence (may need to let first scene finish transitioning first)
Saving not implemented, and most buttons don't work (yet!)
Sound volume control not yet implemented, so I hope you like the music/SFX (not all complete)

Army Select Screen


Your goal is to complete your journey in one fortnight (14 days). You cannot put all of your army in action at once. To complete the game within the time limit, you should find a strategy for which combatants to put in action and which to let recover. You can also recover the entire army (Rest Restore), but this action should be used sparingly.

All combatants who survive the end of a scene gain experience. Levels unlock additional abilities, weapons, etc.

Action Screen

Play is turn-based. Each of your soldiers has a certain amount of action points (AP) to spend on actions, such as moving, firing, etc. Remaining action points shows in the top left status in the form of a bar.

Click on the soldier to bring up an action menu. If you select movement (walk or fly), use the arrow keys to move.
If you select firing, click and drag on the solider to set fire angle and range.

Click + hold the edges of the screen to scroll the camera.

When your own projectile has disappeared, click the screen to bring the camera back to your party.


There are a number of ways to defeat the sulfer demons:

* Strike with weapon (fire stick/spear is more effective than rocks)
* Push them off the screen
* Knock them into the water
* Collapse the structures they're on (rocks are most effective against structures). If they fall far enough, they'll take damage.


If any demons remain at the end of your turn, each will take a turn firing back at you!

Soldiers that take too much damage will leave the battlefield to recover. At the start of your turn, you can bring in replacements by clicking the dotted box. New soldiers will not get to move until your next turn.

Soldiers can flee by leaving the left or right edge of the screen. Once they do, they cannot return. However, as running out of HP will cost them all their experience points toward the next level, fleeing may be preferred.

Known Bugs and Issues

The camera can be wonky, since some projectiles can capture it. Clicking should restore the camera focus to the currently selected player, but sometimes a projectile may lock the camera for a few seconds.

Animations are lacking. This is, after all, Demo 1  :P

« Last Edit: October 11, 2015, 12:22:24 am by merrak »

merrak

  • *
  • Posts: 2524
Been working on Demo 2--mostly internal issues (bug fixes, new features, etc.)--but, also, new art assets. Some new screenshots  8)







One of the nastier AI problems I ran into is determining if an arc-based projectile path will collide with an obstacle. A straight "point A to point B" path can be checked with raycasting, but what about an arc path?

I thought of a linear spline-based solution--breaking the arc path into segments and raycasting from segment A to B, B to C, and so on.



I haven't had time to implement it yet, but I think it'll solve the problem I'm having with the enemies launching projectiles into walls.

Demo 1 is still online, but I'm hoping to have Demo 2, with new art and improved enemy AI, completed by the end of the month.

Bombini

  • *
  • Posts: 1317
Looks veeeerrrryyyy promising!
I like it a lot and i also like a lot how you detailed you share your thoughts.
Keep it up!

merrak

  • *
  • Posts: 2524
Looks veeeerrrryyyy promising!
I like it a lot and i also like a lot how you detailed you share your thoughts.
Keep it up!

Thanks! :)  I've been switching back and forth between this game and the isometric game for a while--but I feel like I'm making more progress with this one. From an artwork perspective, I'm much further along on this game... which keeps me more motivated.

I managed to solve a significant portion of the arc/spline problem today. The image below shows little circles that predict where a projectile will be at a given point in time.



The predicted arc is off a bit, since it doesn't start from the true origin of the projectile. Since this is a test run, I left that detail aside for now. Even with the slight error, the arc does work correctly. The projectile did clear the lamp, break through the brick floor, and hit the sign.

Getting the arc was the hardest part, since it involved some research into Box2D and Stencyl's implementation of it.

Here's the code* that drew the arc. If anyone breaks it, please let me know  :P



and the (global) function:



* since this is a "test run", the code isn't optimized for efficiency.

I believe the step size is 1 step per 10 milliseconds, so 180 steps (the number of steps in my example) would be 1.8 seconds. Since each circle represents one step, you can also predict when the projectile will be at a certain point. For my purposes, this isn't useful information--but I thought I'd throw that out there for anyone else who finds this discussion useful.

The next step will be to create actors at different points along the arc and implement the raycasting bit. The accuracy of the computer's prediction will depend on the number of segments, which is a good opportunity to introduce opponents with different levels of "intelligence".

Opponents with a higher level will use a greater number of segments, which will improve their judgement. "Dumber" opponents will use a small number of segments, so they'll make more incorrect calls in tight spaces.

merrak

  • *
  • Posts: 2524
Not to bug everyone with too frequent updates--but I did manage to solve the arc problem, so I wanted to share the solution  8)

I wrote up a little test that displays the name of the first actor the projectile will collide with. Here's the result:





I'm pretty pleased with the result. It executes quickly enough to be embedded in a drawing loop with no noticeable lag, even with the tiny spline lengths.

I can think of a wide variety of applications of the arc test beyond what I'm doing with it. For example, suppose you have a jumping actor. What will it land on?

I started packaging up the code into an extension, which will provide some blocks for such predictions.



In honor of Back to the Future day, I threw in a "where will [actor] be [n] seconds in the future?" block.

Hopefully others will find it useful :)

The "Physics Toolset" is still missing a couple of blocks. I ought to be able to work in a "force needed to land at [x,y]" block, which should be particularly useful for those jumping actors.

Bombini

  • *
  • Posts: 1317
This is very useful!
Btw..do you do the art? I think it has a unique and lovely style.
Cheers!

merrak

  • *
  • Posts: 2524
This is very useful!
Btw..do you do the art? I think it has a unique and lovely style.
Cheers!

Thanks for your comments! I'm pretty much on my own--art, programming, sound, etc. I could probably hire some of the work out, but I enjoy doing what I can myself--even if I have to throw out a lot of mistakes.

I like contrasts in art, so I'm trying to establish a dark atmosphere with bright, lively characters and cheerful music. Later levels should look and feel more sinister, but the demo I'm working on consists of the early levels.

yoplalala

  • *
  • Posts: 1530
Wow , nice Meerak, I ought to use Box2D now

Bombini

  • *
  • Posts: 1317
Thanks for your comments! I'm pretty much on my own--art, programming, sound, etc.
Kudos!

merrak

  • *
  • Posts: 2524
I used to stay away from Box2D, but I'm starting to like it a lot more now that I feel like I'm learning how it works. The math is relatively simple (high school algebra and trigonometry), but it took me a while to read through how updates are handled. The only thing I still can't get used to is the coordinate system. In my world, (0,0) is the lower left--not the upper left  >:( That point alone has caused more issues in my code than anything else.

I packaged up the solutions to the problems I was having into an extension. I included any other problems I could remember from the "Ask a Question" forum.