Vangard

Instead of a dummy post here just some of my sauce:

I really like how you focus your time on gameplay instead of fancy graphics, tbh the game looks really cool with this vector art anyway :slight_smile:

I also like the idea of having a dynamic world with people simulated. I would really like them to also build stuff, build villages, change the world. There is this really cool feeling, when you’ve been to a place, and after some time visit it again and notice how it changed. Would love to see this in your game :slight_smile:

TLDR; like your approach, like the game idea.

Really cool concept. :point: The player rotation is way too slow. If you speed it up, it would be much more enjoyable to play.

Thanks for the encouraging comments. Fine control of rotation versus speed is a balance I have struggled with. Next thing to add is moving to mouse clicks, which would allow instant rotation and very fine control simultaneously.

@mattheus23, the goal is that eventually social structure, politics and villages will be dynamic. Vangardians should be able to move from one settlement to another and chietains should be able to do a bit of town planning. Kings, queens, earls and chieftains should all be able to fight battles with each other to add further settlements to their sphere of influence. I want to add some additional Vangardians living in the wild (i.e. outside of settlements) and these would be able to start new settlements and/or supplement their income with a bit of robbing.

Also, Vangardians should be able to change career, so the village beggar might one day be a powerful character. Or the beggar might once have been powerful :slight_smile:

May I ask how you found the UI? Was it responsive enough? Did it make sense?

I gave the program a go a few days ago. It took me a while to figure out what I was doing, and I still have questions. But overall, it was intriguing and seems like it must be working as designed.

The first time I tried it, I didn’t have your summary instructions and really floundered. I didn’t figure out that the center sprite was the one being controlled. I couldn’t tell that anything was happening when the arrow keys were pressed, as there is a lot of movement going on at the same time. For example, hitting the up arrow (I now know) moves you “forward” but given that the AI or whatever might be pointing you in any direction, it is hard to pick out the right movement and infer the control. Or at least, it was for me. Also I expected the down arrow to allow backwards movements. And I mistakenly was expecting the keys to be left/right/up/down, not rotate/forward.

Second time, I had reviewed your instructions and I figured out a lot more. But was stumped by trying to pick an apple off of a tree. Third attempt, I realized that the interaction is via the menus that pop up, not clicks on the countryside depiction. I’m not sure how you find your hovel if you forget where it is. I guess, by giving control back to the AI and letting it go back to home?

Now, after having picked and sold a few apples, I am wondering about the character I was started with. As far as I can tell it sleeps at its hovel, then goes to the market and hangs out there doing ??, and then goes home and sleeps again. I was not able to observe its profession or get anywhere when trying to buy a shovel and go mining or farming. So, I remain puzzled as to how I might add value to whatever the AI is already doing for my character.

I guess the next step is to go watch several different characters, and learn what is going on that way.

I think the graphics are functioning quite well. I like them. I look forward to seeing how this neat project develops.

Thanks for the feedback!

I have not put any real effort into player-world interctivity (aka playability) as my time has been chewed up by AI. So after you have collected a few apples there is not much to do. I have shifted focus away from AI now to the user interface and adding in hopefully fun elements, so by the end of the year there may be more of a game here.

Regarding finding home, I will add a popup menu item for that.

I have been a bit distracted by a side project to build a hnefatafl AI, putatively for a game-in-a-game mode where you can play tafl with other Vangardians for wagers or renown. It doesn’t all have to be about fighting… :slight_smile:

But I do continue to work on Vangard itself. I took some steps to simplify the code by removing the concept of quality levels on items (actually, the code is all still there, but everything has a quality of 0 for now). The logic of buying, selling and inventory management was too troublesome for the AIs in cases where they had to take care of quality issues too.

With quality out of the picture a number of tricky bugs have been neutralized (of course, they are still there). I’ve got plenty of bugs to fix, so suppressing a few for the time being can only help.

I have added move-to-mouse click, eliminating the slow sprite rotation issue, and I also have a pop-up radial context menu working.

The number of item types and recipes in the game has been expanded as well.

Here is the popup menu in action:

It looks great! Just a minor remark: honestly, I don’t like your sword icon :slight_smile: I reckon the edges should be straight with just a triangle at their end.

I love a few mini-games in games. Tafl seems to be a really cool game to play.

Tafl is part of vanguard, so why do you apologize? :wink:

…

Really cool to see that radial menu implemented!

Thanks for the encouragement! I like minigames too, partly because they are an authentic part of the world, but also it lets me write other kinds of games while working on a project that will take years.

I’m apologizing not for spending time on tafl but because it’s widening the scope further on a project with already pretty unrealistic goals.

Herjan, regarding the radial menu I have not implemented all your suggestions yet. For example it is two clicks to open the menu and then select an action, so I need to add in your neat suggestion to either execute the default, or drag to select the desired option. another issue is the entities are pretty small so it can be fiddly clicking them, particularly at high game speed.

J0, the icon is a dagger, not a sword - but a sword would look better and more chunky like the other icons, so i’ll make the change. A dagger can point down, but a sword should point up.

I should have a new demo up by the end of the month. I want it to include complete combat (currently only ranged combat is implemented) and domesticated beasts. I want the village beggar to have a dog, and travelling traders need a mule to carry their merchandise. I might go all out and eventually give the peasants sheep, pigs and cows.

To make combat worthwhile, I might add these monsters to the game (otherwise you can only whack civilians):

I had to work on the buying and selling logic and it seems to have added 10% to logic frame times so I need to work on performance. My rough benchmark is that my AMD A10 laptop has to maintain 50 logic frames per second on battery, and I’ve edged over that now.

Can we hope for a lot of other interesting creatures in further builds? :slight_smile:
And also cool gods & goddesses :wink:
Making games based on mythologies is interesting af hahah

J0 :slight_smile:

Edit: I looked up tafl and I think it’s a really nice thing to have in your game! What’s more, I actually found out about Ard Ri, a Scottish variant, so I may implement it as a minigame in my own project! So thanks for mentioning that :wink:

I actually like the dagger. I thought ‘neat all icons have an arrow shaped form pointing from the center point outwards’ :persecutioncomplex:
-ClaasJG

A good point indeed.

Currently all animals and plants are hard-coded, so I am working on a new loader to import the creature definitions from a file. I do find when I move part of the application out of hard-coding into an asset file, code quality and ags1 productivity both shoot up. I need a limited set of animals:

Predators: Bears, wolves, foxes, snakes
Herbivores: Deer, rabbits, wild boars
Birds: Eagles, owls, crows, doves, ducks
Trees: oaks, apples, pines, yews
Personal animals: Dogs, mules, horses, cats
Livestock: Cows, sheeps, chickens, pigs

I am tempted to add mammoths (they went extinct in Midgard, but perhaps they live on in Vangard)? They would just be a very large antisocial cow with a trample attack :slight_smile:

Also, the villages need children who are just nonfunctional decorations. They could be defined as animals too :slight_smile:

On the subject of minigames, I would also like to add brawling/wrestling which was a popular activity at fairs, and also gambling on the outcome of wrestling matches (a minigame in a minigame?).

I took a “short” detour into adding a schema for my creatures.treeml file so that it can stay consistent and I can split the file up in the future. Anyway, here is the creature schema (d being a hack):


creature: empty, d
	id: single, token
	name: single, string
	description : single, string
	icon : single, empty
		width : single, decimal
		length : single, decimal
		color : single, list, decimal
	size : single, decimal
	toughness : single, decimal
	adult : single, optional, empty
		token : integer, single //cow : 30 (days)
	dead : single, optional, empty
		token : string, d //bearCorpse : "Bear corpse"
	decays : single, optional, integer
	rotting : single, optional, empty
		token : string, d // rottingBearCorpse : "Rotting bear corpse"
	disappears : single, optional, integer
	armor : single, optional, integer
	experience: single, integer
	status: single, integer
	reputation: single, integer
	alignment: single, optional, integer
	easyToKill: single, optional, boolean
	inventorySize: single, optional, integer
	attributes : single, empty
		strength : single, integer
		constitution : single, integer
		dexterity : single, integer
		cunning : single, integer
		willpower : single, integer
		empathy : single, integer
	parts : single, empty
		token : integer, d //bearBlood : 1
	produces : single, empty
		token : d, decimal //milk : 1
	skills : single, empty
		token : integer, d //foraging : 4
	behaviors: list, token
	attacks : single, optional, empty
		token : integer, d //claw : 12

It will be very hard to support and edit if you have more then 100 such files.
Better solution custom editor, where you can sort by in game params like DMG, without opening 100 files manually in notepad

i made this long time ago)

https://www.anony.ws/i/2016/06/13/aaaaq.th.png

it looks cool but, hard to maintain on big project,
up: yes its parses to engine data, not simple txt file ^^

then i convert to excel, and its same hard manually resolve reference.)

https://www.anony.ws/i/2016/06/13/qaaa.png

With my background, I am more productive with a simple editor (Intellij), a schema and max 30 files for 5-6 schemas. Definitely do NOT want a custom editor - that is too rigid.

It no so hard as it looks like, Its not Unreal engine :wink:

You already have gui an in game param reference
Make table draw from params Database
And for text (value) change you can use clipboard – don’t need write own text editor )
Ctrl-C copy select param, Ctrl-V past and show result if some errors =)

+need save/load final params Database to file

I can see what you are saying but it doesn’t fit well with the way I work. I positively like simple text files that are free of editors. If I do have an editor it will be an IntelliJ plugin for the text files, which is something I want to write at some point. It’s pretty easy to see how the schema above can become a code completion feature or a “New Entity” template.

Totally excellent idea!

Something that would add a whole bunch of enjoyment and atmosphere with relatively little effort is sound :smiley:

Definitely going to stay tuned to this one.