Battle Engine?

A place to discuss things that aren't specific to any one creator or game.
Forum rules
Ren'Py specific questions should be posted in the Ren'Py Questions and Annoucements forum, not here.
Message
Author
Jake
Support Hero
Posts: 3826
Joined: Sat Jun 17, 2006 7:28 pm
Contact:

Battle Engine?

#1 Post by Jake »

So, over the period of NaNo I developed a relatively flexible battle engine - for inserting RPG-style battles into your VN - which I posted here, along with a note that I'm happy to release the source code for it once I've cleaned it up a bit, since I see the question "how do I make a battle system" crop up relatively frequently.

On the other hand, pretty much nobody has even looked at it; the file's received something like six downloads in nearly two weeks. Now, one reason could be that it's in the WiP forum which nobody reads 'cause it's full of posts about fantastic-sounding games that never get made (I figured that some moderator would probably just move it there if I posted it in Completed, so I didn't bother trying), but another reason could be that nobody's really that interested in a battle system for VNs. So I figured it would be best to ask in a more generally-travelled forum: is anyone interested in the source, once I've tidied it enough and written docs? If nobody is, then I don't have to bother doing anything more than I need for my own projects, after all, and I don't need to document it - both of which would take a fair bit of time I'm quite happy to not spend.

(It's demonstrated in moving-about-a-fixed-path ATB-esque mode because that's how I'm using it for my project, but there's nothing in the engine that means it couldn't be adapted relatively easily to do straight FF-style battles or potentially even SRPG-style - although I've not tried the latter yet to see how well it would perform.)

Three-battle demo of the current state of the battle engine [15MB, all platforms]
Last edited by Jake on Sat Apr 10, 2010 5:31 am, edited 2 times in total.
Server error: user 'Jake' not found

LVUER
King of Lolies
Posts: 4538
Joined: Mon Nov 26, 2007 9:57 pm
Completed: R.S.P
Location: Bandung, West Java, Indonesia
Contact:

Re: Battle Engine?

#2 Post by LVUER »

Making a game (or demo) demonstrating your battle engine would be a good promotion.

If you want, I could make a short game using your engine too... as long as you don't mind with my moeh (and loli) style ^_^
"Double the princesses, quadruple the fun!" - Haken Browning (SRW-OG Endless Frontier)

DeviantArt Account
MoeToMecha Blog (under construction)
Lolicondria Blog (under construction) <- NSFW

Jake
Support Hero
Posts: 3826
Joined: Sat Jun 17, 2006 7:28 pm
Contact:

Re: Battle Engine?

#3 Post by Jake »

LVUER wrote:Making a game (or demo) demonstrating your battle engine would be a good promotion.
There's a three-battle demo linked to in the original thread I posted in the WiP forum, which I linked to in this post!

I'm not 'promoting' as such, though - I'm asking if there's interest. I'm not trying to sell anything...
Server error: user 'Jake' not found

RayRayTea
Regular
Posts: 69
Joined: Thu May 07, 2009 4:16 pm
Projects: The Stolen Diamond Ring (a mystery VN)
Contact:

Re: Battle Engine?

#4 Post by RayRayTea »

Sounds interesting indeed - the low number of downloads is a bit puzzling... I can say for myself that I rarely check the WiP part of the forum (say 1/month) but looking at the thread it had 134 views and 0 replies? I'd expect people to be all over it.

Personally I'd be very interested :^)
nekomura games
Princess Battles, a card-based stat raising sim

chronoluminaire
Eileen-Class Veteran
Posts: 1153
Joined: Mon Jul 07, 2003 4:57 pm
Completed: Elven Relations, Cloud Fairy, When I Rule The World
Tumblr: alextfish
Skype: alextfish
Location: Cambridge, UK
Contact:

Re: Battle Engine?

#5 Post by chronoluminaire »

I'd certainly be interested in the source code, because you've had rather more success with User-Defined Displayables than I have, and I'd like to look at how you did it. The system also has things in common with the combat system I was planning for Mermaid Liaisons, so I might be able to not just learn from the source but actually reuse some bits of it for that, if that's compatible with your intended license terms.
I released 3 VNs, many moons ago: Elven Relations (IntRenAiMo 2007), When I Rule The World (NaNoRenO 2005), and Cloud Fairy (the Cute Light & Fluffy Project, 2009).
More recently I designed the board game Steam Works (published in 2015), available from a local gaming store near you!

Jake
Support Hero
Posts: 3826
Joined: Sat Jun 17, 2006 7:28 pm
Contact:

Re: Battle Engine?

#6 Post by Jake »

chronoluminaire wrote:I'd certainly be interested in the source code, because you've had rather more success with User-Defined Displayables than I have, and I'd like to look at how you did it.
I did notice both times that I've used them that the documentation is a little, uh... 'sparse' on the details of how you actually go about creating one that works. ;-)

(I keep meaning to write a Wiki article or something, and then forgetting.)
chronoluminaire wrote: if that's compatible with your intended license terms.
Of course - I'd be going with something like cc-by.
Server error: user 'Jake' not found

dizzcity
Veteran
Posts: 311
Joined: Thu Aug 17, 2006 10:51 am
Projects: Lakeside Sunset, Wedding Vows, Working Woman
Location: Singapore
Contact:

Re: Battle Engine?

#7 Post by dizzcity »

I admit, I was one of the 6 downloads... but quite frankly, I had very little to say about it. It was okay. Not bad, not great... you've managed to implement the foundation for a decent turn-based tactical game, with unit stat meters, combat and fog of war. But personally, I wasn't that drawn to it. If I wanted to create a tactical game within a visual novel, I would use another engine customised for tactical gameplay (like Battle for Wesnoth), and work out how to tell a story on top of that, instead of trying to use a visual novel engine with tactical game add-on. But that could be just personal preference.

... I guess, if I were to make any helpful comments, it would be that the interface could use more work. Maybe a map grid to help plan moves (and then being able to move multiple spaces), as well as a sidebar showing unit stats and information would be nice. Right now, even if it behaves like a tactical battle simulator, it doesn't look like it. Sorry I can't say anything better.

-Dizzy-
A smart man follows the rules, a dumb man breaks them. A great man bends the rules and thus creates them.
Fanfiction.net Profile.
Writer and director of Working Woman (NaNoRenO March 2010)
Writer and director of Wedding Vows (finished 2009).
Creator of Lakeside Sunset (finished 2006).

LVUER
King of Lolies
Posts: 4538
Joined: Mon Nov 26, 2007 9:57 pm
Completed: R.S.P
Location: Bandung, West Java, Indonesia
Contact:

Re: Battle Engine?

#8 Post by LVUER »

Jake wrote:
LVUER wrote:Making a game (or demo) demonstrating your battle engine would be a good promotion.
There's a three-battle demo linked to in the original thread I posted in the WiP forum, which I linked to in this post!

I'm not 'promoting' as such, though - I'm asking if there's interest. I'm not trying to sell anything...
When I say promoting, I don't mean you sell it or something. I mean so that people get interested in your engine. And I don't visit (or don't remember have visited) your thread, so I don't know about the demo. But ...

What I'm suggesting is not making a demo (or 3) in your engine thread, but rather making a completely new game (so it must be placed in WIP or completed games) along with the title of your game (not "A game/VN made with a Battle Engine). That will catch more eyes (I hope).
"Double the princesses, quadruple the fun!" - Haken Browning (SRW-OG Endless Frontier)

DeviantArt Account
MoeToMecha Blog (under construction)
Lolicondria Blog (under construction) <- NSFW

Jake
Support Hero
Posts: 3826
Joined: Sat Jun 17, 2006 7:28 pm
Contact:

Re: Battle Engine?

#9 Post by Jake »

LVUER wrote: When I say promoting, I don't mean you sell it or something. I mean so that people get interested in your engine.
I think you missed my point; I mean "I'm not trying to sell anything" in the "I'm not trying to make people want it" sense. If people are interested, then I'm happy to do the extra work to make it available, but it's not like I want to whore it out for the sake of popularity or anything.

It's just that I'm at the point where I'm going to be able to do some more work on it pretty soon, and I'll probably do some things differently if I want to make an open engine that's extensible in many different ways rather than just fulfil the requirements for my one game.
dizzcity wrote:I had very little to say about it.
You obviously do have some things to say, 'cause you've said them here! :P

Seriously, "this is not particularly inspiring for these reasons" is a lot more useful, as feedback goes, than "this is great".
dizzcity wrote: If I wanted to create a tactical game within a visual novel, I would use another engine customised for tactical gameplay (like Battle for Wesnoth)
I've not particularly examined Wesnoth, but I don't want to break the conventions of VN gameplay too much, so - for example - I've made sure that my implementation here is completely deterministic, and if you take the same actions, the same results will occur, making it half-battle, half-puzzle... which would be pretty difficult to ensure in a lot of battle systems, which rely heavily on random numbers.

Not to mention that I already know how to code for Ren'Py, which already provides a lot of 'difficult' VN features like rollback, while not only do I not know how [tactical battle engine X] works, but it's pretty likely that the engine would be written on assumptions which don't hold in the VN context, making implementing things like rollback on top of it pretty difficult.
dizzcity wrote: ... I guess, if I were to make any helpful comments, it would be that the interface could use more work. Maybe a map grid to help plan moves (and then being able to move multiple spaces), as well as a sidebar showing unit stats and information would be nice.
The sidebar thing is deliberate - within the scope of the story I'm telling, I don't want to make it a numbers-heavy game, because I don't want the player to be able to predict how some enemies will work through a method other than trial and error. I'm still a little hesitant to even include the health on the stats bar, and I may turn it off for some enemies. But there's nothing implicit to the engine which makes it difficult to do that, it's something that would be a good idea to include in a demo suite, I guess.

Showing available moves all around the map rather than just showing the moves immediately available is probably a good idea, although it wouldn't be a grid since the moves aren't necessarily aligned in any manner to each other (to allow better for flowing around or over terrain features). Moving multiple spaces is again something I'm not interested in including for Abraxas, but would be a good idea for a generic engine... so thanks for the feedback!
Server error: user 'Jake' not found

User avatar
jack_norton
Lemma-Class Veteran
Posts: 4084
Joined: Mon Jul 21, 2008 5:41 pm
Completed: Too many! See my homepage
Projects: A lot! See www.winterwolves.com
Tumblr: winterwolvesgames
Contact:

Re: Battle Engine?

#10 Post by jack_norton »

Very nice, I like a lot the "fog of war" effect. Might I ask how you did it?
follow me on Image Image Image
computer games

Jake
Support Hero
Posts: 3826
Joined: Sat Jun 17, 2006 7:28 pm
Contact:

Re: Battle Engine?

#11 Post by Jake »

jack_norton wrote:Very nice, I like a lot the "fog of war" effect. Might I ask how you did it?
The fog of war is mostly described in the second point of this post, since I had a few problems with it the first few times around...


Basically, I start with a white rectangle the same size as the screen, iterate over the player characters and for each one draw a blurry black circle appropriately-positioned over the white rectangle. The blurry edges kind of melt into each other and give the slightly-rounded-edge to the 'visible area'.

Then I take a darkened version of the battle background, and use the black-and-white image that I've built up as a parameter to im.AlphaMask, so that the areas I painted black earlier get made fully transparent and the areas which are left white remain fully opaque, and the blended bits around the outside of the black become partially-transparent. Lastly, I just call renpy.show passing in the result of the im.AlphaMask call, onto a layer above all the other battle stuff.
Server error: user 'Jake' not found

User avatar
jack_norton
Lemma-Class Veteran
Posts: 4084
Joined: Mon Jul 21, 2008 5:41 pm
Completed: Too many! See my homepage
Projects: A lot! See www.winterwolves.com
Tumblr: winterwolvesgames
Contact:

Re: Battle Engine?

#12 Post by jack_norton »

Cool, thanks for the explanation :)
follow me on Image Image Image
computer games

User avatar
papillon
Arbiter of the Internets
Posts: 4107
Joined: Tue Aug 26, 2003 4:37 am
Completed: lots; see website!
Projects: something mysterious involving yuri, usually
Organization: Hanako Games
Tumblr: hanakogames
Contact:

Re: Battle Engine?

#13 Post by papillon »

I admit, I was one of the 6 downloads... but quite frankly, I had very little to say about it.
Er, I suppose that sort of counts for me as well. :) I downloaded it, I played it, it functioned, I wouldn't mind playing a game that used it, but I wasn't swept away with amazement such that would make me beg for the code. Partly because I already HAVE battle engines, of course.

Seconding the comment about being able to see better how to move around the map; I did waste a couple of moves trying to get people into positions only to realise they apparently couldn't get past each other in the way I was trying to make them. But I didn't consider that a huge problem since given the way the game was presented (as a more puzzly kind of battle) needing to try again wasn't offputting. Although I didn't actually end up having to retry, I still won.

Jake
Support Hero
Posts: 3826
Joined: Sat Jun 17, 2006 7:28 pm
Contact:

Re: Battle Engine?

#14 Post by Jake »

papillon wrote: Er, I suppose that sort of counts for me as well. :)
You know, the two of you have given the more-useful responses in this thread, so you should really get over this 'having nothing to say' thing. :P
Server error: user 'Jake' not found

User avatar
unknown5
Veteran
Posts: 311
Joined: Tue Apr 20, 2010 1:41 pm
Completed: (see sig)
Projects: slit-mouth girl, purifier, etc.
Contact:

Re: Battle Engine?

#15 Post by unknown5 »

i'm interested in the battle engine/code. i'm a newb and want to learn as much as possible.

questions:
1) when attacker engages opponent is it possible to display close up reaction shots on top using show bandit hurt1, show bandit hurt2, show bandit death, show nobleman ouch1, etc? and option to turn it on/off?

2) mebbe add labels to stat bars - HP/AP (action points) etc? i always skip ahead and never know what's going on, so wasn't sure what the blue bar the bottom was at first, lol.

3) i know it's just a demo, but dramatic bg music always makes things seem more exciting, hehehe.
Image
information wants to be free, yo.

Post Reply

Who is online

Users browsing this forum: No registered users