Super Battlelands

Discussion of complete and in-progress major AW Hacks or Projects - challenge hacks, War Room map packs, Online Advance Wars sims.

Moderator: Terragent

User avatar
danieru
Location: Tokyo

Super Battlelands

Post by danieru » Tue Nov 04, 2014 2:57 pm

Hey Everyone, I've been developing Super Battlelands for the past half year.

The plan is to make it a proper indie release so it is not a straight clone but I'd like to be similar to AW1's tone and AW4's style of tactics.

From what I've seen this community knows tactics and the AI to an insane degree. I'd be honored if you guys gave us whatever criticism you can provide. Even trivial stuff like "Oh the AI in AW1 is blind to X" is a great help and can give me insight into how the AI works.

So the overview of Super Battlelands:
[*] Single player focused
[*] Hot seat multiplayer
[*] low-poly pixel-art like 3D
[*] 17 units
[*] Land, Sea, and Air units
[*] Capturing enemy factories will allow you to build from them
[*] First-strike advantage (so not like Famicom Wars)


And the visuals:

All units lined up:
Image

Planned HUD:
Image

Odd shaped map support:
Image

One of the maps we've design, likely horrible to play:
Image

The infantry:
Image

And of course the logo:
Image

So, what are your thoughts?

User avatar
Sven

Re: Super Battlelands

Post by Sven » Tue Nov 04, 2014 3:21 pm

hey, your project looks gorgeous.

you'll want to contact Xenesis (the administrator of the site) if you have detailed questions about the AI.

good luck.

User avatar
Treedweller

Re: Super Battlelands

Post by Treedweller » Tue Nov 04, 2014 3:56 pm

I can't help you with much, but I wanted to echo what Sven says: your project looks very pretty. I adore the cutesy vibrant colours and fonts.

User avatar
danieru
Location: Tokyo

Re: Super Battlelands

Post by danieru » Tue Nov 04, 2014 4:03 pm

No no you guys are doing this wrong! You need to be critical! Stop being nice! You guys are too kind!

Here, what do you think of this style for the battelscreen units?:

Image
Image
Image

Here's something to be mad about: we're not going to have CO powers! We don't think we can balance the game properly with them. There, does that make you angry?

I've been working on the damage table. Later today I'll post that so you guys can tell me how broken it is. I'm serious, it is going to be very broken and I need experts to tell me what to fix.

User avatar
Narts

Re: Super Battlelands

Post by Narts » Tue Nov 04, 2014 5:36 pm

Normally I would be furious about the lack of CO powers and I keep reading the name as "Super Battletoads" but with the graphics being so cute, how can I be angry?

Anyway, it's going to be hard to give any detailed feedback on balance without being able to play the game.

Is there a playable prototype of the game somewhere?

The unit costs look strange. Are those final? Anti-air costing $1000?

What platform is this for?

User avatar
danieru
Location: Tokyo

Re: Super Battlelands

Post by danieru » Tue Nov 04, 2014 8:16 pm

Okay here's what I have for a damage table. Calculated with zero defense tiles. The format is attackers at the top and victims along the side.

Image
Direct link in case the above is too hard to read: http://i.imgur.com/HXCNi7b.png

So please do mention anything you see or think. What is the most over powered unit? Which unit is worthless?

Anyway, it's going to be hard to give any detailed feedback on balance without being able to play the game.

Is there a playable prototype of the game somewhere?

The unit costs look strange. Are those final? Anti-air costing $1000?

What platform is this for?
Yeah you're right sorry about not having anything public playable. We're using Webgl so the browser is our runtime but for release we're going to package it up with nodejs-webkit ot make it look like a native app. Using webgl and js works for us since it gives us all non-console platforms without much work. So we could include a mobile version and give it to people who have bought the PC version. We might not sell the mobile version separate since mobile players are too stingy.

Right now the control scheme and everything else is lacking polish. Gameplay works but the AI is super stupid. Once we fix the obvious broken stuff I'd love to have a closed test with people who really know AW.

The unit costs in the mockup are fake. The "real" current prices are in the damage chart but everything can changed if it is an improvement.

User avatar
Robosturm
Rank: Metall Legion Leader

Re: Super Battlelands

Post by Robosturm » Tue Nov 04, 2014 10:30 pm

You may know or not that i'm working on a Advance Wars Clone.

Since you asked for some advices for programming AI.

First rule you won't be able to make an AI that can beat a human without cheating in a Turn-Based-Game like Advance Wars.
The reason is that the game is to complex. You can't compute all moves. Try to make a decent AI that is fun to play against.

A Good start up is to split the AI up into different modes the AI runs through during one turn:
E.G Capturing
Indirect Firing Units.
Direct Firing
Moving
Transporting Units
Building

Just try to find the best target in every turn without thinking about counter damage in the first try.

Ignore transporting for you're first AI's since is a complex scenario and needs some extra logic.

Try to avoid recalculations of the whole map after a move of a unit only change stuff that was influenced by the unit moved. (Saves time)

You may try to take a look and try to understand the code https://code.google.com/p/commander-war ... ce/browse/ inside the folder KI.
Here are all AI-Classes and Code CoW uses (with German comments in the most cases though)


The very easy AI of my project that only moves to the nearest target and attacks and does basic capturing and building has a size of 470kb of code.
So it's hard for me to give you some advice without any information. Or try to ask more specific questions since i need some hints is to answer you're questions. ;)

or ask Xenexis though i don't know if he tried to change the AI in AW-ROMs
Commander Wars only another AW-Clone?
Want to help us? (We search some spriters)
CommanderWars@gmx.de

User avatar
danieru
Location: Tokyo

Re: Super Battlelands

Post by danieru » Tue Nov 04, 2014 11:39 pm

Hey Robosturm great to get your input on this since you've approached this before. What you've described is almost word for word what we have right now with some minor exceptions :lol:

Our AI reuses the existing simulation stuff which the interface used to calculate movement range and targeting. Which is really just Dijkstra's algo plus a sweep for indirect unit's targets. Thus we handle both direct and indirect units in the same way. We find all potential targets of all our units and pick the most profitable attack (which does consider the damage taken from counter attacking). We cull at every pairing so the process does not generate many garbage objects. Right now we can calculate all that inside a single frame (16ms) on my last gen ultrabook. So I figure we have performance overhead to also consider second order costs from the enemy's turn.

The problem I have is the move stage. Right now we cheat and have all the units drive towards the nearest enemy HQ. But that is pretty silly so I'd love to hear how you handle the strategy for this stage. Both picking which units to attack and how many units to send to attack.

Sorry I took a look at Commander War's code (thanks for making it open source :D ) but I cannot understand anything because the variables are in German. Was that 400KB auto-generated? That's a lot of code!

I'm curious what you are recalculating? Right now we don't maintain any state except the terrain. Have you calculated movement maps or areas of influence?

How did you handle deciding which units to build? Doe the AI plan multi-turn strategies which effect the unit selection?

Thanks for your help! :super:

User avatar
Robosturm
Rank: Metall Legion Leader

Re: Super Battlelands

Post by Robosturm » Wed Nov 05, 2014 3:35 am

Yes the 8MB code of CoW are written by me and Eagle by Hand. :D

Okay let's see:

16ms for one Unit or all?

I guess you underestimate the complexity of Advance Wars for the AI. ;)
But i guess you'll find that out sooner than later.

CoW mainly uses three classes for the AI.

The PFS (Path finding system or Wegsuchsytem) this is the stupid think showing the fields you can move over in this turn for humans.
The CoW systems adds some extra logic here. You can force the PFS to find the nearest city enemy,etc. and return the path to it (including some extra information that i don't remember in detail)

The base AI class provides some useful functions for all AI's like calculating dmg and some more stuff.

The derived AI classes have some extra logic again.
The AI's up to the Medium AI don't consider fronts or how much units to send their since in 80% of all cases. You only need to find the nearest enemy.
Everything about it takes a really huge coding that is tested in the Heavy AI (but i can't say anything about it now) since it's a alpha version right now.

First firing with indirects and then by directs makes it easier for the AI to move.

The AI's use the prices of a unit or the movement range of a unit to prioritize which direct unit is moved first.
(not true for medium or heavy AI)

That basically covers the easy AI-Strategies.

For the medium AI e.g. the AI calcualtes how much units of the enemy can attack a field and how much dmg they take + how much units the AI has in this area....
It getting quite complex here... :(

For the building system the very easy AI just spams units that are cheap or if it has enough gold more expensive ones

The easy AI works similar to the AW2 AI which uses a kind of builing table (5 infis 1 tp 2 landers one transport copter) everyone knows this with some extra logic behind.

We have a more complex system checks which units to we have how much dmg do they deal do which enemy.
Is there an enemy we don't deal dmg too e.g. a Copter or Bomber.
Find units that deal dmg against this unit. Build it.
(This system is configurable with an ini file and can be forced to be used by all AI's) This means you can change the AI so it builds the Units you want to be on a map you created (only on this map)

or even more complex which units are around this base have we units to deal with them here? Build it...+ Try to build enough units.......

As said the 400kb only cover the basic logic.
So it's getting quite complex.

Have you calculated movement maps or areas of influence?
Yes and that's not easy at all.
For how to reuse or calc map influences. The AI creates a virtual map of the game calcs stuff here (before moving anything (this acutally takes 1min) since the AI creates a lot of information here) and use this information to do moves cheking counter damage etc.

And maybe you try the CoW AI's one time viewtopic.php?f=37&t=12896&start=80 and check if the AI is strong enough in your opinion.

The problem is the code here is over 2 years old + i'm currently working on the network for CoW.
And after this i either rebuild the Battle Animation System since it's glitchy as hell or continue testing and rebuilding and throwing away code for the heavy AI. I have some ideas here but i need to test them in the first run.

The heavy AI is in English but as mentioned alpha code the AI doesn't crash but i have to change a lot of calculations here e.g. making them comparable and and and...
Take a look at that class if you want...

but in the end AI for AW games is complex complex complex complex and i'm just a stupid guy trying to program something a whole company couldn't do. You can easily beat an AW AI in any game so....
Commander Wars only another AW-Clone?
Want to help us? (We search some spriters)
CommanderWars@gmx.de

User avatar
Linkman
Tri-Star CO
Tri-Star CO
Rank: Master of Fiction

Re: Super Battlelands

Post by Linkman » Wed Nov 05, 2014 3:40 am

Very nice and interesting stuff, mr. danieru-san.
"everytime I try to draw xen I end up drawing a kangaroo smoking a cigar while chainsawing a tree" - Deoxy
"I can't believe I'm the only person who voted Stallone. His appeal lies in watching is movies again and again just to hear what the hell he's talking about." - Kilteh

User avatar
danieru
Location: Tokyo

Re: Super Battlelands

Post by danieru » Wed Nov 05, 2014 4:36 am

Thanks for the thorough writeup Robosturm. You've given me quite a number of ideas. I had not thought of using Dijkstra's algo to find the nearest cities and units but that should work fantastic for the move stage.

The 16ms was for a full frame. No idea how much of that is AI. I benchmarked it by sticking two AI on a map with each other and letting them play full speed. The plan is to allow the AI to think over multiple frames, the architecture is pretty flexible in that way. Any subsystem and capture control of the main loop.

You made a good point about firing the indirects before the directs. The directs will never be able to extend the victim selection of the indirects so it makes no sense to allow directs to steal targets from the indirects. I'll have to change things so we prioritize indirects.

Could you provide any links to where I can learn more about the AW2 AI's build list? I like the system you described much better than AW2's but I'm curious about it.

Sorry I cannot try out CoW for myself since I'm on linu but I'll take a look at the Hard Ai.

@Linkman: Thanks!

User avatar
Robosturm
Rank: Metall Legion Leader

Re: Super Battlelands

Post by Robosturm » Wed Nov 05, 2014 4:51 am

Sadly i have no links for you. :(

Everything inside the AI classes is figured out by Eagle and me.

You may ask Xenexis since he's the best AW Mod Hacker around the world.

If you have 16ms you don't have a AI that calculates much or a small map. :D

If i take a look at the Medium AI or Heavy they need 30secs up to 1min on (width=40 heigth = 40 map) to prepare the first move after that it goes quite fast (but after this time i have a Path Map of the whole map for all units with some features)

The easier AI's should 100-500ms on a 40x40 map never tested it. Since i was to lazzy to write a ignore animation function.
Commander Wars only another AW-Clone?
Want to help us? (We search some spriters)
CommanderWars@gmx.de

User avatar
danieru
Location: Tokyo

Re: Super Battlelands

Post by danieru » Thu Nov 06, 2014 1:07 am

Gipface! I've talked with Xen over IRC so now I only need your input! Please tell me everything wrong.

User avatar
Kireato

Re: Super Battlelands

Post by Kireato » Fri Nov 07, 2014 5:53 am

Aside from the odd shaped map support, this is step back from Advance Wars.

Why are you bothering with balance if the game is going to be single player focused and will only have hot seat multiplayer?

Why Antwerp?
Image
"Hey, it's the Kir. Wee." - Linkman 145
"I can't help myself sometimes... :cry:" -Help Topic Guest

GipFace
Rank: Lord of Children Games

Re: Super Battlelands

Post by GipFace » Sat Nov 08, 2014 3:26 pm

Pro tip: Pick a font where the 1 doesn't look like a 7

I have nothing else to say because everyone has tried to make a "better" AW only to fall flat on their faces

User avatar
danieru
Location: Tokyo

Re: Super Battlelands

Post by danieru » Sat Nov 08, 2014 4:21 pm

Odd I thought I had already replied to Kiraeto.

Anyway what I think I had wrote:
@Kireato: It needs to be balanced so there is no one dominate strategy a player might abuse. Since abusing a single tactic to win every map gets boring fast. Antwerp is the name of the "bad" generals. So a name with "twerp" fitted his personality.

@Gipface: Good point, I'll put that on the list of things to fix.

Also a good point Gip, no one should ever make another competitor. Under no condition should my competition read the advice here and add it to their game. I quite like it that all the shipped AW-like games have been for mobiles and have included painful polish in the control scheme. Or you get something like Future Wars which is just wrong on every level.

User avatar
danieru
Location: Tokyo

Re: Super Battlelands

Post by danieru » Sun Nov 09, 2014 1:16 am

Just a quick video to mark the addition of sound: https://www.youtube.com/watch?v=eljTg3s_qf0

User avatar
danieru
Location: Tokyo

Re: Super Battlelands

Post by danieru » Tue Dec 09, 2014 11:06 pm

So this past week I've been working on the AI and I'm proud to say it now puts up a good fight. Not fantastic but it is no push over.


Image

I'm Yellow and the AI is Purple. I truly lost this session. The AI stopped every attempt I made to grab property. Meanwhile I had wasted my starting cash on 2 heavy tanks, 1 of which got lost in the initial wave.

Now this only happened because I gave it a head start. That goes mean we could design maps with large AI advantages and call it a day. Except I've got several more ideas and plenty of CPU overhead so we've got plenty of room for growth.

Upsell: please do checkout this week's newsletter! :beg:

User avatar
Xenesis
Tri-Star CO
Tri-Star CO
Rank: Hydrocarbon Inspector
3DS Code: 2535-4646-7163
Location: 0x020232DD

Re: Super Battlelands

Post by Xenesis » Tue Dec 09, 2014 11:45 pm

Hah, neat.

Also:
You'll notice that we've decided to make buildings neutral when their owner is destroyed. Note that the Advance Wars series does the opposite and gives the capturing player ownership of all the dead team's buildings. We felt switching to neutral was the better balance. This way multi-team maps will remain balanced even after a player is eliminated.
This only happens in AW if you capture the HQ, if you just rout the opponent, the properties go Neutral.
IST wrote:Even the worst individual needs to discover the joys of a chicken statue that is also a pregnant blonde housewife.

Who is online

Users browsing this forum: Multivac [Bot] and 0 guests