Author Topic: Liars Dice (Pirates Dice)  (Read 4102 times)

Offline Hemlos

  • To boldy go where no pixel has gone before!
  • Global Moderator
  • Prof. Inline
  • *******
  • Posts: 1579
  • Particle Hawk
    • View Profile
Liars Dice (Pirates Dice)
« on: 2012-Oct-10 »
Hi gang,

Maybe if i get a mac, one day, i will publish this game to the app store.
That doesnt look like it will happen anytime soon.
So while it sits in disuse i will put it out as a beta for windows os.
There is a readme included with more information and play and the history.
Enjoy, Neil

Ps. the song is Smile By Charlie Chaplin , which i transcomposed from sheet music into GLMidi program i wrote a few years ago, then i converted it into a mp3.


[attachment deleted by admin]
« Last Edit: 2012-Oct-10 by Hemlos »
Volume_of_Earth(km^3) = 4/3*3.14*POW(6371.392896,3)

Offline erico

  • Community Developer
  • Prof. Inline
  • ******
  • Posts: 4146
    • View Profile
    • Portfolio
Re: Liars Dice (Pirates Dice)
« Reply #1 on: 2012-Oct-12 »
Hi Hemlos,
checked your game, gave a test go, but didn´t quite read the instructions.

The music sounds like PIRATES and bring good flashbacks :)
Everything works fine, the only functional gfx glitch I think I saw was when exiting the game, it takes a while for the logo to burn and seems out of sync with the sound, maybe the particle system is taking some time to start up?

On the gfx side, and that is a personal opinion/preference, you have too many art styles mixed.
The main game screen could also use some action, feels too still, altough the coin shine helps a bit.
 
There must be dice rolling animations too! :good:

Offline Hemlos

  • To boldy go where no pixel has gone before!
  • Global Moderator
  • Prof. Inline
  • *******
  • Posts: 1579
  • Particle Hawk
    • View Profile
Re: Liars Dice (Pirates Dice)
« Reply #2 on: 2012-Oct-12 »
Thank you for the reply, i really appreciate it!

I noticed the glitch at the exit too, i was just playing around with my sprites and didnt really plan on using the pheonix at all.
The music was originally composed for a piano i believe, but i thought the harpiscord would give it more character and age.  :good:

Teh graphics iz suxxors, i agree.  :puke:
The asthetics, is the way it is, so i would have some kind of generic way of looking and playing it.
I didnt plan on publishing it in its current state.
My generic approach begins with parchment paper and wood, to give it an 'old times' feel.
This is an area that i lack in, the proficiency of creating decent themes/moods for game graphics.
One of the main reasons i stopped the project, is time constraints based on graphics.

Correct playability is the stage of development i halted all progress on.
As far as playability goes..i THINK it is working correctly.


And if youre more interested in the behind the scenes stuff keep reading on...
I totally wouldnt mind if you stopped readingat this point, i just wanted to vent my interests in the ai.

There are 3 computer players, they are all playing with a different personality.
The rules of the game are set in place, and the players take them into consideration at all times.
One is conservative, one is a risk taker, and the other is in the middle.
You can figgure out, who is who, after playing it a long time.
Even without knowing they have different personality traits, the human player will be able to deduce this fact automatically.
The risk taker might lie a bit more, and call liar at odd times.
The conservative one might not call liar as much and will more carefully consider lying as much.
Its really interesting to me, the creation of the Ai and how they 'think' behind the scenes, that another reason i made the game.

Perhaps i will push the dev of the ai a bit further one day, due to my interests..
I am considering giving the ai neural nets, to attempt to make playing against them more realistic after long periods of playing.
Its really not going to be much of a difference in the way they play already..they play rough and tough as it is and are hard to beat, all 3.
The neural nets would essentially change all thier personalities to be more like the moderate player, which happens to be the best of the 3 ai players.

My concept of play may be flawed, but the rules are set in stone.
Furthermore, playing against those computer players, is like playing against ME!   8)
I found the way i play to be very successful, but that doesnt mean its perfect and unbeatable, its a game of chance.

Other people might play in a different style...and thats ok, because that may be just what is needed, in order to beat those computer players!
I count people, the dice under my cup, and the odds the other players might have one number or another, according to how they bid.
That is the basis of which the computer players play, and thats why its like playing against me.
The rules are the rules, and you play according to those rules.
Deciding what your action will be during your turn, is totally up to your within the constrait of the rules.




Volume_of_Earth(km^3) = 4/3*3.14*POW(6371.392896,3)

Offline erico

  • Community Developer
  • Prof. Inline
  • ******
  • Posts: 4146
    • View Profile
    • Portfolio
Re: Liars Dice (Pirates Dice)
« Reply #3 on: 2012-Oct-13 »
What? Not read the second part? But it is the good part! :P

I see what you mean on the criticism, but let´s get to the AI part.
Great AI experience you described!

How are you dealing the decisions? Do the computer cheat?
Are their personalities changeable on the fly? Or set to stone?

I wonder and am interested on the subject.

4.5 billion years ago I decided to code my own mix of king of fighter + yie ar kung fu.
One of the reasons was that I wanted to have AI going since not many of my friends enjoyed fight games and those who did are way worse then me.

But on the point, it works out on a set of RNDs and Ifs, and I wanted it to play real and never cheat.
So I did a simple AI that way, ended up feeling a bit robotic and predictable.
Then I added another layer of Ifs and RNDs to make room for errors and change in style.
I later thought I could even do another layer but this one similar to a punch card to input on the current system.
By the time I decided the player should memorize working situations and change the punch card accordly, it blew my mind.
The project was left behind as it was the first full project I did without thinking it could take a couple years to finish. :P

Back on the AI, basically it considers 3 distances from the enemy, close, mid, far, it changes from one place to another on its will according to energy, power from itself and the other player...That deals position and each one has more or less its own things, like mid and far, there is a higher chance the AI will power up, it may use projectiles more on a mid range for example. It had a few flaws I was working on when lost interest on the game, but it was quite on a good level so far.

Here is a video of it in action, I f**cked up on capturing so its jerky and strange, but it actually plays smooth and cool, at least you get to see the AI behaviour. :good:

PS: At that time I didn´t knew how to dim variables, so the code is doubled on every routine, the second player is a copy and paste of the first player code but with manually changed variables names, it really a huge mess of a code, and it was just recently that winUAE can run it without crashing :D

<a href="http://www.youtube.com/watch?v=5uZeXnN1zr8" target="_blank">http://www.youtube.com/watch?v=5uZeXnN1zr8</a>

Offline Hemlos

  • To boldy go where no pixel has gone before!
  • Global Moderator
  • Prof. Inline
  • *******
  • Posts: 1579
  • Particle Hawk
    • View Profile
Re: Liars Dice (Pirates Dice)
« Reply #4 on: 2012-Oct-13 »
How are you dealing the decisions? Do the computer cheat?
Are their personalities changeable on the fly? Or set to stone?
Well thats hard to explain, whether they cheat or not.
Afterall its a game where you 'lie' to get an dvantage over the next player.
The personalities are set at startup, with varying amounts of risk(lying, and guess method)
The guess method determines whther the last guy was lying(over bidding)
The players personalities are set in stone, but the methods of playing have a range of risk taking.
In other words a player might take more risks than what logic will say is illogical, but on the other hand that same player might play with less risk in the next turn, according to the range of risk they possess.
I had to review the code to answer your Q's...
The players also 'learn' to play better, altering the amount of risk they take.

Quote
4.5 billion years ago I decided to code my own mix of king of fighter + yie ar kung fu.
Did you invent dirt?



Quote
By the time I decided the player should memorize working situations and change the punch card accordly, it blew my mind.

So it learns as you play against it, Like a psuedo neural net or something?
It actually looks pretty cool. Reminds me of Kung-fu master, an arcade game i used to play alot as a kid.

« Last Edit: 2012-Oct-13 by Hemlos »
Volume_of_Earth(km^3) = 4/3*3.14*POW(6371.392896,3)

Offline erico

  • Community Developer
  • Prof. Inline
  • ******
  • Posts: 4146
    • View Profile
    • Portfolio
Re: Liars Dice (Pirates Dice)
« Reply #5 on: 2012-Oct-13 »
It drinks on kung fu master too.

It dosen´t learn as it goes, at that point would require huge changes and no neural thing, just rnds.
But that was what I wanted.

Quote
The players also 'learn' to play better, altering the amount of risk they take.

Exactly that is what I wanted.

I was wondering, in that fashion, if I could make the comp ´read´ real player choices and them try to set a copy behaviour for an AI.
In that way, one beat em up game I was dreaming could ´save´the player in one location in a way that another player can play against him in AI form.
Real offline playing hehe. :P (but it is serious)

Offline Hemlos

  • To boldy go where no pixel has gone before!
  • Global Moderator
  • Prof. Inline
  • *******
  • Posts: 1579
  • Particle Hawk
    • View Profile
Re: Liars Dice (Pirates Dice)
« Reply #6 on: 2012-Oct-13 »
In your gameit might be easier to improve the fighting according to success and failure of different moves, and compared to timed reaction. This way the ai is improving itself according to its own experiences without the need for a real player...and that said, you could pit 2 ai players against each other and watch them improve and kick each others butts instead of yours  :)

Such as, if a player does something, and the ai does something within an alotted amount of time, rate the measure of success and remember the move the ai did.
Perhaps tweaking the allotted time to react to the real players moves...giving and taking time, to find a better balance between success and failure...like a slider in a sense, where it adjusts automatically ...you could make levels of 'difficulty' in that sense also.
Volume_of_Earth(km^3) = 4/3*3.14*POW(6371.392896,3)

Offline erico

  • Community Developer
  • Prof. Inline
  • ******
  • Posts: 4146
    • View Profile
    • Portfolio
Re: Liars Dice (Pirates Dice)
« Reply #7 on: 2012-Oct-13 »
Yep, but the one idea is to be able to record a real player´style and try to mimic on the AI side but it was to be a simpler game then the fight one.
Oh, another thing, when I said ´cheat´up there, I did not mean ´in game´ but like, the computer can actually see other people´s numbers and hand (on a card game for example) or can read a move before it get executed and counter, as on the fight example.

So what I meant was if your AI is in anyway checking something inside code that a normal human player would not be able to do.

For example, on my game, special moves cost power, the computer never attempts a special move if it dosen´t have power.
Human players usually don´t have time to check precisely if it is doable and once in a while, when pulling such move without power, you get frozen for some seconds.

In this case of mine, the computer can perfectly and fast read its own power gauge and never fail.
I meant this kind of cheating. I was to change this part but never did. I did the AI against AI think, really pleasurable thing to do, it feels it is alive on its own.


Offline Hemlos

  • To boldy go where no pixel has gone before!
  • Global Moderator
  • Prof. Inline
  • *******
  • Posts: 1579
  • Particle Hawk
    • View Profile
Re: Liars Dice (Pirates Dice)
« Reply #8 on: 2012-Oct-13 »

So what I meant was if your AI is in anyway checking something inside code that a normal human player would not be able to do.

Nope, the computer players only see thier own dice and make assumptions about what everyone else has!

its funny because disney made a pirates of the carib compu game, where a player can cheat like that and see the computer players dice, lol!
Volume_of_Earth(km^3) = 4/3*3.14*POW(6371.392896,3)

Offline erico

  • Community Developer
  • Prof. Inline
  • ******
  • Posts: 4146
    • View Profile
    • Portfolio
Re: Liars Dice (Pirates Dice)
« Reply #9 on: 2012-Oct-14 »
Strangely, SNK´s bosses on their fighting games clearly seem to know you move before the first frame ever kicks in. :puke:
But I take as part of the challenge I guess...

AI would be a great theme for some game code competition.

Offline Hemlos

  • To boldy go where no pixel has gone before!
  • Global Moderator
  • Prof. Inline
  • *******
  • Posts: 1579
  • Particle Hawk
    • View Profile
Re: Liars Dice (Pirates Dice)
« Reply #10 on: 2012-Oct-14 »
Gives me an idea...

make a program that interprets mini ai scriptlets.

and pit the scriptlets against each other to see who can win...

the method for such a thing is problematic in itself, but would be really cool...like the robot wars
winners based on ingenuitive agents.

set it up with javascript and post your agent to the webserver type of thing, watch the battle online

unfortunetly i dont have the time for that either :/

edit:
new genre of gaming? hmm
Volume_of_Earth(km^3) = 4/3*3.14*POW(6371.392896,3)

Offline erico

  • Community Developer
  • Prof. Inline
  • ******
  • Posts: 4146
    • View Profile
    • Portfolio
Re: Liars Dice (Pirates Dice)
« Reply #11 on: 2012-Oct-14 »
Exactly that idea which is bugging me, just as you described.
To use some sort of data to manage the AI.
I would like this data to be able to mimic a real player style of playing.
But more like sliders instead of script.

I have a couple ideas to test this out, one including a fight platform game pitching gangs against each other.
But the overall work for such is currently beyond me.

The other is a simple rogue game based on an ancient basic book.
I will try this one out, as I can keep things simple and ascii as it goes.

Probably won´t get to the script/punchcard part yet, but I hope to lay a good ground of study this way.

Robot wars was quite nice. :good: