GDR Forum Index
Podcast Podcast
Dev Dev Logs
Search Search
RSS RSS
Register Register
Log in Log in
Reply to topic GDR Forum Index -> Game Developer's Refuge -> Development Log - Adventure in Rulon Page Previous  1, 2, 3, 4  Next
View previous topic :: View next topic  
Author Message
Diablo
Contributor

Joined: 19 Nov 2015
Posts: 170
Location: Tristram
PostPosted: Sun Jun 12, 2016 9:22 am    Post subject: Reply with quote

Damn. What happened? The last bad guy killed them all? Where can I sign this guy up for my army?
View user's profile Send private message Visit poster's website
AdmiralTofu
Contributor

Joined: 02 Nov 2009
Posts: 189
Location: Millville, NJ
PostPosted: Sun Jun 12, 2016 10:19 am    Post subject: Reply with quote

The game doesn't have support for items or magic yet, so I wasn't able to heal my party.

Also, the kobold made a pact with one of your minions. The report should be on your desk by this afternoon.
_________________
Dev log - Adventure in Rulon
Dev log - Acronia

---
Twitter - @HadroSoft
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
AdmiralTofu
Contributor

Joined: 02 Nov 2009
Posts: 189
Location: Millville, NJ
PostPosted: Sun Jun 12, 2016 11:21 am    Post subject: Reply with quote

Even though the only attacks available to both the player and the enemies are melee attacks, and there's no items or magic, and enemies can't move from their positions yet (only the player's party can move around the battlefield), I'm finding battles to be incredibly fun. I've actually spent all of today and most of yesterday playing the game instead of coding it.

Battles tend to run long, especially when there's a lot of enemies -- sometimes up to 5-10 minutes. There's a lot of strategy involved with how you should arrange your party on the battlefield: how close can you get to enemies so you can hit them, but hopefully not be within their melee range (not always possible)? When should you back off? When should you crowd an enemy to give it more targets to spread its damage around?

Once enemies can move around, it'll become even more strategic, and even more so once I have long-range attacks and magic programmed.

Encounters are going to be random, but I think since battles take longer, the encounters are going to be less frequent, and the rewards much higher.
_________________
Dev log - Adventure in Rulon
Dev log - Acronia

---
Twitter - @HadroSoft
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
AdmiralTofu
Contributor

Joined: 02 Nov 2009
Posts: 189
Location: Millville, NJ
PostPosted: Tue Jun 14, 2016 7:22 am    Post subject: Reply with quote

Enemies can now move around on the battlefield. Which party member they choose to pursue is based on their intelligence. If there's a viable target in attack range, then they just attack that target. If not, then:

  • If rand:[0, 100) <= (Int * 2), then they start to chase down the one with the lowest DFP
  • If the roll fails, a random party member is chosen for pursuit

The enemies are pretty ruthless once they get going. I've had times where I lost a party member (or three) because I just couldn't get away from a crowd of baddies quickly enough.

That will change as I get long-range attacks and magic implemented; monsters won't constantly need to go directly after the party; they can lob attacks from across the field, or waste turns healing, etc.

---

A few items on the upcoming agenda.


  • I need to genericize the battle engine. Since it was originally a quick-and-dirty prototype, it makes a lot of assumptions. For example:

    • The game assumes that whoever is currently performing an action is always the person at the front of the turn queue. This isn't always true. For instance, characters will eventually be able to automatically counter when attacked in melee. Also, psionics users will have certain abilities that allow them to act out of turn -- think of Instant spells in Magic: The Gathering.
    • Currently, battle actors are treated only as either enemies or players. Later on there will be neutral-aligned creatures that can be turned, good-aligned creatures that help out the party, summons that either act as AI or as player-controlled characters depending on summoner level, etc. I plan to replace the basic "party vs. enemies" code with something more general like actorsAreAllies (const BattleActor& someDude, const BattleActor& someOtherDude)
    • Weapons are not currently working. The game just uses characters' base Strength and Vitality rather than derived ATP and DFP for damage calculations. Also because there are no weapons, the engine assumes that all attacks are melee. A bunch of design problems trickle down from that, chiefly that the engine currently only supports one target for any particular action -- magic and psionics (and at some point, at least one fighting-based physical skill) need to support multiple targets.

  • Add support for running away from battle. This is already partially implemented -- if you move outside of the circular battle area, a "running man" icon appears above your character's head. Once I get this feature finished, if you press the key to confirm the move, the character will run away and be removed from the battle. (Currently, nothing happens; you can move as far outside the battle area as you want). Characters must run away individually rather than being able to do so as a party, so there will be some strategy involved in how you want to arrange your party and when's the right time to get out of Dodge. At the moment, I haven't decided if party members who run away should be given XP based on creatures already killed, or if they should get nothing.
  • Add support for defending and passing the turn. There is currently a "Defend" option, but all it does at the moment is yield your turn. Once implemented, choosing "Pass" will yield the turn but with a shorter wait duration until your next turn; "Defend" will have a longer duration but buff your DFP.
  • Items
  • Weapon support -- melee, long-range (conventional), long-range (firearms), two-handed, dual-wield/off-hand
  • Characters should start the battle facing toward the middle of the battlefield, but will turn to face different directions as they move around, target other creatures, are attacked, etc. Back attacks should deal extra damage. Attacks should also increase the chance that an AI creature will become distracted and change targets.
  • Terrain height, obstructions, line of sight. Hopefully this will be relatively trivial -- as I mentioned a few posts back, my plan for the actual battle engine is to be 2.5D like Doom: a flat plane with height variations. There won't, for example, be floors above floors where I have to worry about actors standing over top of one another. I may eventually opt only for height variations and forget about having full-on obstructions, as it may complicate AI movement more than I'm willing to deal with. (We'll see).


If it sounds like a lot, it is. This is more of an extended, one- or two-month plan rather than a "gotta-get-it-done-next-week" kind of thing.
_________________
Dev log - Adventure in Rulon
Dev log - Acronia

---
Twitter - @HadroSoft
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
AdmiralTofu
Contributor

Joined: 02 Nov 2009
Posts: 189
Location: Millville, NJ
PostPosted: Sun Jul 10, 2016 3:00 pm    Post subject: Reply with quote


_________________
Dev log - Adventure in Rulon
Dev log - Acronia

---
Twitter - @HadroSoft
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
AdmiralTofu
Contributor

Joined: 02 Nov 2009
Posts: 189
Location: Millville, NJ
PostPosted: Thu Jul 14, 2016 4:36 am    Post subject: Reply with quote



---

Later edit -- Looking at it now, I think the items list should be one column, to make room for a list of the party members. It'd be a pain to have to switch between party and inventory every time you want to use an item, when you could just have both on screen at once.
_________________
Dev log - Adventure in Rulon
Dev log - Acronia

---
Twitter - @HadroSoft
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
AdmiralTofu
Contributor

Joined: 02 Nov 2009
Posts: 189
Location: Millville, NJ
PostPosted: Sat Jul 16, 2016 10:45 am    Post subject: Reply with quote

Because positions on the battlefield are assigned randomly, and enemy AI has an element of randomness to it as well, some battles look very different from others. Some wind up being very spread out, with each ally only taking on a single enemy or maybe two. Others, like this one, wind up being a clusterfuck of melee combat.



In the end, we made it through.



But not without casualties.


_________________
Dev log - Adventure in Rulon
Dev log - Acronia

---
Twitter - @HadroSoft
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
AdmiralTofu
Contributor

Joined: 02 Nov 2009
Posts: 189
Location: Millville, NJ
PostPosted: Sun Jul 17, 2016 4:43 pm    Post subject: Reply with quote

Officially out of pre-alpha/prototype stage; now in alpha.
_________________
Dev log - Adventure in Rulon
Dev log - Acronia

---
Twitter - @HadroSoft
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
AdmiralTofu
Contributor

Joined: 02 Nov 2009
Posts: 189
Location: Millville, NJ
PostPosted: Wed Jul 20, 2016 4:48 pm    Post subject: Reply with quote


_________________
Dev log - Adventure in Rulon
Dev log - Acronia

---
Twitter - @HadroSoft
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
AdmiralTofu
Contributor

Joined: 02 Nov 2009
Posts: 189
Location: Millville, NJ
PostPosted: Wed Jul 20, 2016 7:19 pm    Post subject: Reply with quote

Now that items are working (along with 85% of the GUI functionality the game will need), I'm moving on to skills. This is going to be a huge bulk of what goes into customizing your characters, and will be the deepest, most complex part of making this game. Some skills will enable specialized battle commands, others will be inherent abilities that trigger on certain events or conditions (lots of function pointers and specialized code there), and others will enable sub-subsystems like magic and psionic abilities.

I think the best way to tackle this is to take it one step at a time instead of trying at the outset to think of every option I'll need for every situation in every part of the game. Once I get the data structure for a base "Skill" object in place, I'll then go through and start implementing skills, starting with the simpler ones. If a skill requires functionality that doesn't exist yet, then I'll code it in (and only then).

One thing that killed me on Acronia was trying to anticipate every feature I'd ever want in a game engine, rather than coding what I needed at that exact moment.
_________________
Dev log - Adventure in Rulon
Dev log - Acronia

---
Twitter - @HadroSoft
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
AdmiralTofu
Contributor

Joined: 02 Nov 2009
Posts: 189
Location: Millville, NJ
PostPosted: Thu Jul 21, 2016 6:46 pm    Post subject: Reply with quote



Equipment menu! Just a mockup. Will begin implementing tomorrow.

I had intended to start on skills, and I got the basic data structure for a player skill designed, like I had talked about. But the first skill I wanted to implement was one that offset penalties for wielding swords. Since that would require having an equipment menu to test it with*, I veered off in that direction.

Doing this should feel like a sidetrack, but this shit's gonna wind up being in the game anyway, so it's not like it's wasted time.


----
* I could have just hardcoded a sword onto one of the player characters to test it out, but since when is that any fun?
_________________
Dev log - Adventure in Rulon
Dev log - Acronia

---
Twitter - @HadroSoft
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
Diablo
Contributor

Joined: 19 Nov 2015
Posts: 170
Location: Tristram
PostPosted: Fri Jul 22, 2016 5:26 pm    Post subject: Reply with quote

Damn. Your menus are catching fire. It does look like you still need to work on anti-cheat coverage, though.
View user's profile Send private message Visit poster's website
AdmiralTofu
Contributor

Joined: 02 Nov 2009
Posts: 189
Location: Millville, NJ
PostPosted: Sat Jul 30, 2016 11:11 am    Post subject: Reply with quote



Skills are happening.

----
EDIT: IT WORKS!!!!
_________________
Dev log - Adventure in Rulon
Dev log - Acronia

---
Twitter - @HadroSoft
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
AdmiralTofu
Contributor

Joined: 02 Nov 2009
Posts: 189
Location: Millville, NJ
PostPosted: Sat Jul 30, 2016 5:16 pm    Post subject: Reply with quote



It's not much, but you see where "Equip Swords" is highlighted in bright green? That's a milestone right there -- my first fully-implemented player skill.

Skills are basically going to be the backbone of the character development system throughout the entire game, so this is important.

So stoked.
_________________
Dev log - Adventure in Rulon
Dev log - Acronia

---
Twitter - @HadroSoft
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
AdmiralTofu
Contributor

Joined: 02 Nov 2009
Posts: 189
Location: Millville, NJ
PostPosted: Mon Aug 01, 2016 5:51 pm    Post subject: Reply with quote



Mockup complete. Code time!
_________________
Dev log - Adventure in Rulon
Dev log - Acronia

---
Twitter - @HadroSoft
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
Sirocco
Moderator

Joined: 19 Aug 2005
Posts: 9345
Location: Not Finland
PostPosted: Tue Aug 02, 2016 5:51 am    Post subject: Reply with quote

Quote:

It's not much, but you see where "Equip Swords" is highlighted in bright green? That's a milestone right there -- my first fully-implemented player skill.


:]
_________________
NoOP / Reyn Time -- The $ is screwing everyone these days. (0xDB)
View user's profile Send private message Visit poster's website
AdmiralTofu
Contributor

Joined: 02 Nov 2009
Posts: 189
Location: Millville, NJ
PostPosted: Sun Aug 07, 2016 3:13 pm    Post subject: Reply with quote



Skill menu is done. Third skill implemented. These should move along a little smoother now that I have a framework in place.

---

The rest of the description:

"...through level 4, and 100% ATP when mastered."
_________________
Dev log - Adventure in Rulon
Dev log - Acronia

---
Twitter - @HadroSoft
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
AdmiralTofu
Contributor

Joined: 02 Nov 2009
Posts: 189
Location: Millville, NJ
PostPosted: Sat Aug 13, 2016 7:27 pm    Post subject: Reply with quote



Battle module slowly moving out of prototype phase. Programmer art and Google image search collide. Temporary assets are temporary.
_________________
Dev log - Adventure in Rulon
Dev log - Acronia

---
Twitter - @HadroSoft
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
AdmiralTofu
Contributor

Joined: 02 Nov 2009
Posts: 189
Location: Millville, NJ
PostPosted: Sat Aug 27, 2016 9:01 pm    Post subject: Reply with quote

Still alive. Been working on a lot of under-the-hood stuff, so there's not been anything exciting to log about.

Today I was writing the default constructor for the magic spell class and naturally, I initialized the "MP cost" member variable to zero. That got me wondering... could cantrips work in a JRPG? If so, I wonder what kind of spell effects they would be. Or would having free, at-will magical effects unbalance the game no matter what they were?

Obviously this is more of a playtesting-will-sort-it-out kind of issue. But it's something I had never thought of before.
_________________
Dev log - Adventure in Rulon
Dev log - Acronia

---
Twitter - @HadroSoft
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
Sirocco
Moderator

Joined: 19 Aug 2005
Posts: 9345
Location: Not Finland
PostPosted: Sun Aug 28, 2016 6:19 am    Post subject: Reply with quote

For small stuff, sure. Major spells should have either an MP cost or an associated recharge/cooldown timer. But if your mage runs out of MP they are basically out of the game at that point and I've never found that an interesting approach.

Maybe you could make all entry-level spells cantrips, and everything above that a normal spell with a resource cost.
_________________
NoOP / Reyn Time -- The $ is screwing everyone these days. (0xDB)
View user's profile Send private message Visit poster's website
AdmiralTofu
Contributor

Joined: 02 Nov 2009
Posts: 189
Location: Millville, NJ
PostPosted: Sun Aug 28, 2016 5:53 pm    Post subject: Reply with quote


_________________
Dev log - Adventure in Rulon
Dev log - Acronia

---
Twitter - @HadroSoft
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
AdmiralTofu
Contributor

Joined: 02 Nov 2009
Posts: 189
Location: Millville, NJ
PostPosted: Mon Sep 05, 2016 8:21 pm    Post subject: Reply with quote

Spent the weekend porting the project to SFML. Still a few kinks to work out, but all's good so far.
_________________
Dev log - Adventure in Rulon
Dev log - Acronia

---
Twitter - @HadroSoft
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
Diablo
Contributor

Joined: 19 Nov 2015
Posts: 170
Location: Tristram
PostPosted: Tue Sep 06, 2016 1:41 pm    Post subject: Reply with quote

AdmiralTofu wrote:
Spent the weekend porting the project to SFML. Still a few kinks to work out, but all's good so far.


There must be more information!
View user's profile Send private message Visit poster's website
AdmiralTofu
Contributor

Joined: 02 Nov 2009
Posts: 189
Location: Millville, NJ
PostPosted: Tue Sep 06, 2016 2:19 pm    Post subject: Reply with quote

Diablo wrote:
There must be more information!


And there is!

For the past week or so, my game had suddenly started dropping frames. I was getting, on average, 56 fps, and the motion was really jerky. Like, it would stutter for 4 or 5 frames every second. Not very appealing to look at. I thought maybe something might have changed with my system that would be interfering, but I have no unusual processes running. Acronia (which I built with raw OpenGL) still runs beautifully. I went back to a build of AiR from two months ago that I know was running smoothly then. Jittery as hell. The only thing I'm able to think might be the problem is that Allegro no longer plays nice with recent updates to Windows 10. Upgrading to the latest build of Allegro and doing a clean install of MinGW and completely rebuilding my project did nothing. So, with a heavy sigh, I started porting to SFML. And the result is smooth as silk.

It was scary, though. I mean, what if I finally got it compile and run, and had the same problem? To say nothing of the fact that I would have wasted a three-day weekend, I'm not sure what I would have done or where I'd have gone from there. Thankfully that didn't happen, but it was at the back of my mind the whole time.
_________________
Dev log - Adventure in Rulon
Dev log - Acronia

---
Twitter - @HadroSoft
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
AdmiralTofu
Contributor

Joined: 02 Nov 2009
Posts: 189
Location: Millville, NJ
PostPosted: Wed Nov 16, 2016 4:19 pm    Post subject: Reply with quote

I originally posted about this in Off Topic because, I don't know, it was late and I was tired. But it does make a lot more sense here.

AdmiralTofu wrote:
I haven't done any real work on the game in about two months. I feel like I'm losing my energy/motivation for solo dev. The loneliness is crushing. I think I need a coding buddy.

I just wish I didn't live in a crappy town that's 45 minutes from literally everywhere else on the planet. I'm the only person I know who programs.

(I'm actually pretty close to being the only person I know, period.)


I posted that on Twitter as well last night, and I got an interesting suggestion from somebody: stream my coding on Twitch.

I actually kind of like that idea, but it's also scary as hell. It's one thing to show your shitty code to a real-life person who's (presumably) there to give you constructive criticism and feedback (and share a pizza with). It's another thing altogether to show your shitty code to any rando who wanders onto your stream.
_________________
Dev log - Adventure in Rulon
Dev log - Acronia

---
Twitter - @HadroSoft


Edited by AdmiralTofu on Thu Nov 17, 2016 5:51 am; edited 1 time
View user's profile Send private message Send e-mail AIM Address Yahoo Messenger
Reply to topic GDR Forum Index -> Game Developer's Refuge -> Development Log - Adventure in Rulon Page Previous  1, 2, 3, 4  Next

Use this link to get a Sign-On Bonus when you get started!

All trademarks and copyrights on this page are owned by their respective owners. All comments owned by their respective posters.
phpBB code © 2001, 2005 phpBB Group. Other message board code © Kevin Reems.