*Author

Offline andretimpa

  • Legendary Member
  • ******
  • Posts: 3624
  • Country: br
  • Reputation Power: 50
  • andretimpa brings all the vitality and activity of a Life Nymph.andretimpa brings all the vitality and activity of a Life Nymph.andretimpa brings all the vitality and activity of a Life Nymph.andretimpa brings all the vitality and activity of a Life Nymph.andretimpa brings all the vitality and activity of a Life Nymph.andretimpa brings all the vitality and activity of a Life Nymph.andretimpa brings all the vitality and activity of a Life Nymph.andretimpa brings all the vitality and activity of a Life Nymph.andretimpa brings all the vitality and activity of a Life Nymph.andretimpa brings all the vitality and activity of a Life Nymph.
  • OMG how did I get here I'm not good with computers
  • Awards: Slice of Elements 9th Birthday CakeArt Competition: MS Paint #9 WinnerArt Competition: League of the Battle Champion WinnerArt Competition: Foil ArtWeekly Tournament WinnerSlice of Elements 8th Birthday CakeArt Competition: Paint With Elements - The Elemental AvatarsSlice of Elements 7th Birthday CakeCompetition - A Challenge of Challenges1st Place WC Winner: October 20151st Place Weekly Challenge Winner: September 2015Weekly Design August 2015 - GoldWeekly Design July 2015 - SilverSlice of Elements 6th Birthday CakeForum Brawl #4 WinnerPaint with Elements Competition WinnerSlice of Elements 5th Birthday CakeWeekly Tournament WinnerSlice of Elements 4th Birthday Cake
Re: openEtG http://elementscommunity.org/forum/index.php?topic=52763.msg1114436#msg1114436
« Reply #12 on: December 10, 2013, 04:29:47 PM »
What graphics are needed? 2 players are needed to test it?
Every time a graboid evolves, an elemental gets his wings.
:gravity Guild (old) & War 9 / :time Brawl 2, 3 & War 7 / :death War 8 / :fire Brawl 4 / :entropy Brawl 5 / :darkness War 10

Offline serprexTopic starter

  • Hero Member
  • *****
  • Posts: 1560
  • Reputation Power: 0
  • serprex hides under a Cloak.
Re: openEtG http://elementscommunity.org/forum/index.php?topic=52763.msg1114438#msg1114438
« Reply #13 on: December 10, 2013, 04:37:47 PM »
Open etg.dek.im in two tabs and you can match against yourself. CuCN's been finding lots of issues by running 12QP/6 SoSe

As for graphics: everything. Status effects, element icons, card templates, card pictures. I'm unsure about effects, that'd require the engine have a way to tell the UI to start an animation (Bolting targets, healing glow, etc)
Right now openEtG is a graphically a bunch of text and text over colored rectangles
« Last Edit: December 10, 2013, 04:50:40 PM by serprex »

Offline EmeraldTiger

  • Legendary Member
  • ******
  • Posts: 4630
  • Country: us
  • Reputation Power: 61
  • EmeraldTiger shines with the light of the Morning Glory!EmeraldTiger shines with the light of the Morning Glory!EmeraldTiger shines with the light of the Morning Glory!EmeraldTiger shines with the light of the Morning Glory!EmeraldTiger shines with the light of the Morning Glory!EmeraldTiger shines with the light of the Morning Glory!EmeraldTiger shines with the light of the Morning Glory!EmeraldTiger shines with the light of the Morning Glory!EmeraldTiger shines with the light of the Morning Glory!EmeraldTiger shines with the light of the Morning Glory!EmeraldTiger shines with the light of the Morning Glory!EmeraldTiger shines with the light of the Morning Glory!
  • :life :aether
  • Awards: Slice of Elements 5th Birthday CakeSlice of Elements 4th Birthday CakeSlice of Elements 3rd Birthday CakeSlice of Elements 2nd Birthday Cake
Re: openEtG http://elementscommunity.org/forum/index.php?topic=52763.msg1114452#msg1114452
« Reply #14 on: December 10, 2013, 05:33:42 PM »
Will this be able to test card ideas in the future?
If Nowhere is Somewhere, and Somewhere is Over there, How can we be Anywhere?
:life :aether

Offline serprexTopic starter

  • Hero Member
  • *****
  • Posts: 1560
  • Reputation Power: 0
  • serprex hides under a Cloak.
Re: openEtG http://elementscommunity.org/forum/index.php?topic=52763.msg1114462#msg1114462
« Reply #15 on: December 10, 2013, 06:29:46 PM »
It can test card ideas now. Run updatedb.py or download sheets from here as csv. Add card info to respective sheet, add any new active to Actives in etg.js. Passives/statuses are implemented rather poorly, as they have to be implemented in game flow

Granted that may seem cumbersome. Ideally passives could hook to events and there'd be a scripting language to describe effects which could be encoded in base64 bytecode in a spreadsheet. Lots of options on how to make this more generic, which should be explored eventually, though currently all my effort is in getting the base Elements card set working

Offline Gandora

  • Hero Member
  • *****
  • Posts: 1170
  • Reputation Power: 18
  • Gandora is a Blue Crawler starting to think about his first run.Gandora is a Blue Crawler starting to think about his first run.Gandora is a Blue Crawler starting to think about his first run.
  • Awards: Slice of Elements 5th Birthday Cake
Re: openEtG http://elementscommunity.org/forum/index.php?topic=52763.msg1114466#msg1114466
« Reply #16 on: December 10, 2013, 06:41:26 PM »
So, I'd like to add this to my Eclipse Workspace. I already installed EGit, but I don't know how to proceed from there. Can someone help me out? :)

Ok, I think I somehow did it. Got the project in eclipse now. Got to find out how to collaborate and how to use github now ^^
« Last Edit: December 10, 2013, 06:54:31 PM by Gandora »
Who likes poems? :) Here are mine.

Offline Zso_Zso

  • Hero Member
  • *****
  • Posts: 1400
  • Country: ca
  • Reputation Power: 20
  • Zso_Zso is a Mummy waiting to discover the path to glory.Zso_Zso is a Mummy waiting to discover the path to glory.Zso_Zso is a Mummy waiting to discover the path to glory.Zso_Zso is a Mummy waiting to discover the path to glory.
  • Pinata-team General
  • Awards: Gold Donor7th Trials - Master of LightSlice of Elements 4th Birthday CakeWeekly Tournament WinnerWeekly Tournament WinnerWeekly Tournament WinnerSlice of Elements 3rd Birthday Cake
Re: openEtG http://elementscommunity.org/forum/index.php?topic=52763.msg1114469#msg1114469
« Reply #17 on: December 10, 2013, 06:54:05 PM »
In the OP you mention no AI. Both as a programmer and gamer, I have been fascinated by AI development, but never really had the time to invest in it (apart from a fun project long time ago in a 3D tic-tact-toe game).

Mind, you I am not so keen on re-programming a pre-scripted AI to behave the same / similar as the current one in EtG. However, I would be interested in exploring some rather different avenues, such as:

  • user-script driven AI to be supplied per-deck, i.e. implement a scripting language in which one could describe how a specific deck should be played, this could lead to AI3/FG decks being played much smarter and also to an Arena, where the player who submits the deck would also submit how to play it.
  • Dynamic learning AI, that would record PvP games, analyze patterns to determine what moves lead to victories for various deck archetypes, play-styles  depending also on the opponent decks.
  • Optimum response calculation based AI. This would "cheat" in the sense that it would peak at the whole deck of the opponent and calculate what possible moves the opponent can make in subsequent rounds, building a decision-tree like in a chess-AI to determine what's the best move.

So, I'd be interested in exploring these types of AI-implementations if you don't mind me joining in on this effort.
I have a little bit of experience in javascript  (although more extensive in Java ), though I do need to dust-off my knowledge and look into any recent changes in the language as well as HTML5.
Master of losing 0-5 with 27:6 upgrade advantage

Offline andretimpa

  • Legendary Member
  • ******
  • Posts: 3624
  • Country: br
  • Reputation Power: 50
  • andretimpa brings all the vitality and activity of a Life Nymph.andretimpa brings all the vitality and activity of a Life Nymph.andretimpa brings all the vitality and activity of a Life Nymph.andretimpa brings all the vitality and activity of a Life Nymph.andretimpa brings all the vitality and activity of a Life Nymph.andretimpa brings all the vitality and activity of a Life Nymph.andretimpa brings all the vitality and activity of a Life Nymph.andretimpa brings all the vitality and activity of a Life Nymph.andretimpa brings all the vitality and activity of a Life Nymph.andretimpa brings all the vitality and activity of a Life Nymph.
  • OMG how did I get here I'm not good with computers
  • Awards: Slice of Elements 9th Birthday CakeArt Competition: MS Paint #9 WinnerArt Competition: League of the Battle Champion WinnerArt Competition: Foil ArtWeekly Tournament WinnerSlice of Elements 8th Birthday CakeArt Competition: Paint With Elements - The Elemental AvatarsSlice of Elements 7th Birthday CakeCompetition - A Challenge of Challenges1st Place WC Winner: October 20151st Place Weekly Challenge Winner: September 2015Weekly Design August 2015 - GoldWeekly Design July 2015 - SilverSlice of Elements 6th Birthday CakeForum Brawl #4 WinnerPaint with Elements Competition WinnerSlice of Elements 5th Birthday CakeWeekly Tournament WinnerSlice of Elements 4th Birthday Cake
Re: openEtG http://elementscommunity.org/forum/index.php?topic=52763.msg1114472#msg1114472
« Reply #18 on: December 10, 2013, 07:08:33 PM »
Optimum response calculation based AI. This would "cheat" in the sense that it would peak at the whole deck of the opponent and calculate what possible moves the opponent can make in subsequent rounds, building a decision-tree like in a chess-AI to determine what's the best move.

a less "cheaty" implementation would be trying to infer the deck your opponent is using, or at least the general strategy (example: mark of darkness and a bunch of time pillars, assume ghostmare, unless ghosts take too long to appear). This would lead to a fuzzy decision tree (not sure if that's the technical term :P).
Every time a graboid evolves, an elemental gets his wings.
:gravity Guild (old) & War 9 / :time Brawl 2, 3 & War 7 / :death War 8 / :fire Brawl 4 / :entropy Brawl 5 / :darkness War 10

Offline Keeps

  • Full Member
  • ***
  • Posts: 440
  • Reputation Power: 9
  • Keeps is a Spark waiting for a buff.
  • New to Elements
Re: openEtG http://elementscommunity.org/forum/index.php?topic=52763.msg1114474#msg1114474
« Reply #19 on: December 10, 2013, 07:23:05 PM »
AI should be using a field algorithms, it'll play smarter that way.

Offline rob77dp

  • Master of Death
  • *
  • ******
  • Posts: 2763
  • Country: us
  • Reputation Power: 50
  • rob77dp brings all the vitality and activity of a Life Nymph.rob77dp brings all the vitality and activity of a Life Nymph.rob77dp brings all the vitality and activity of a Life Nymph.rob77dp brings all the vitality and activity of a Life Nymph.rob77dp brings all the vitality and activity of a Life Nymph.rob77dp brings all the vitality and activity of a Life Nymph.rob77dp brings all the vitality and activity of a Life Nymph.rob77dp brings all the vitality and activity of a Life Nymph.rob77dp brings all the vitality and activity of a Life Nymph.rob77dp brings all the vitality and activity of a Life Nymph.
  • Am I back?!? Time zone US Pacific -7/-8GMT
  • Awards: 12th Trials - Master of DeathWinner of 12 Lives #4Slice of Elements 9th Birthday CakeSlice of Elements 8th Birthday CakeForum Brawl #6 Winner - The Tentacle's Grip10th Trials - Master of DeathWeekly Tournament WinnerSlice of Elements 7th Birthday CakeTeam Competition - The Spy Who EMed MeGold Donor9th Trials - Master of DeathSlice of Elements 6th Birthday CakeSlice of Elements 5th Birthday Cake7th Trials - Master of Death
Re: openEtG http://elementscommunity.org/forum/index.php?topic=52763.msg1114478#msg1114478
« Reply #20 on: December 10, 2013, 07:41:15 PM »
Optimum response calculation based AI. This would "cheat" in the sense that it would peak at the whole deck of the opponent and calculate what possible moves the opponent can make in subsequent rounds, building a decision-tree like in a chess-AI to determine what's the best move.

a less "cheaty" implementation would be trying to infer the deck your opponent is using, or at least the general strategy (example: mark of darkness and a bunch of time pillars, assume ghostmare, unless ghosts take too long to appear). This would lead to a fuzzy decision tree (not sure if that's the technical term :P).

Your description reminds me of my days designing custom AI scripts for AOE II.  Essentially, I imagine AI's for Elements that looks at factors and uses various methods of inferring deck opposed from those factors/clues.

- Mark
- Deck size
- First turn plays (then expanding to future turn card plays)
- RECENTLY experienced opposition matching these clues
- Expanding from there into a library of past decks "not seen lately" by AI from opponents
- [own deck stuff as Zso describes about a list of "how I prefer AI to use my deck" stuff]
etc.

Edit:  The AOE II corollary is that you can 'teach' (write) your AI scripts to learn/know the map style, opponent quantity, opponent civilizations chosen, etc and then invoke certain sections of AI method from that data.
TTG DB Brawl #6/1ST**Death Gen War #10/7th**GP DB Brawl #5/6th**Death Gen War #9/9th**MoL DB Brawl #4/3rd**Water Sld War #8/7th**DDD Boss Brawl #3/3rd*Death Gen War #7/5th*Death Sld War #6/11th

Offline eaglgenes101

  • Hero Member
  • *****
  • Posts: 1963
  • Country: us
  • Reputation Power: 29
  • eaglgenes101 is a proud Wyrm taking wing for the first time.eaglgenes101 is a proud Wyrm taking wing for the first time.eaglgenes101 is a proud Wyrm taking wing for the first time.eaglgenes101 is a proud Wyrm taking wing for the first time.eaglgenes101 is a proud Wyrm taking wing for the first time.
  • The rising all-'rounder of Elements
  • Awards: Slice of Elements 6th Birthday CakeSlice of Elements 5th Birthday CakeSlice of Elements 4th Birthday Cake
Re: openEtG http://elementscommunity.org/forum/index.php?topic=52763.msg1114494#msg1114494
« Reply #21 on: December 10, 2013, 09:25:38 PM »
My idea of the AI was this:
1. Count quanta available
2. Check for one-turn game end
3. Run synergy function on every card pair possible
4. Note down all synergy chains
5. Use computationally efficient function to determine the play that does best
6. Sort this best play by which cards are best to play first
7. Play it, if a random event or new card happens, rerun search

The evaluation question I suggest is turns to lose - turns to win.

I'm eager to help with the AI.
My 3 game-modification principles:
1. If it ain't broke, don't wreck it.
2. Simple fixes for simple problems.
3. Remember to fill in the holes.

Offline antiaverage

  • Administrator
  • ********
  • Posts: 1440
  • Reputation Power: 35
  • antiaverage is a Gargoyle, dangerous and everlasting.antiaverage is a Gargoyle, dangerous and everlasting.antiaverage is a Gargoyle, dangerous and everlasting.antiaverage is a Gargoyle, dangerous and everlasting.antiaverage is a Gargoyle, dangerous and everlasting.antiaverage is a Gargoyle, dangerous and everlasting.antiaverage is a Gargoyle, dangerous and everlasting.
  • HTML5-hipster-sloth.bunchie();
  • Awards: Slice of Elements 9th Birthday CakeRaise the Banners...AgainSlice of Elements 6th Birthday CakeSlice of Elements 5th Birthday CakeMS Paint Card Art #7 WinnerSlice of Elements 4th Birthday CakeSlice of Elements 3rd Birthday Cake
Re: openEtG http://elementscommunity.org/forum/index.php?topic=52763.msg1114516#msg1114516
« Reply #22 on: December 10, 2013, 10:29:51 PM »
For those looking to contribute, the beauty of github is that any of you can fork the project and then submit a pull request.

https://help.github.com/articles/fork-a-repo

https://help.github.com/articles/using-pull-requests
Developer of http://dek.im - a Deck Image generator with rollover to view full cards, current to version 1.327

Thanks to Amashi for my avatar!

Offline Keeps

  • Full Member
  • ***
  • Posts: 440
  • Reputation Power: 9
  • Keeps is a Spark waiting for a buff.
  • New to Elements
Re: openEtG http://elementscommunity.org/forum/index.php?topic=52763.msg1114524#msg1114524
« Reply #23 on: December 10, 2013, 11:06:39 PM »
For those interested in AI, as an old AI developer, I would suggest looking into
Potential Fields: (for general board and quanta control)
http://aigamedev.com/open/tutorials/potential-fields/

When potentials are matching, or potentials show inevitable defeat, then have it switch  all fuzzy logic algorithms to develop possible combinations, and make random 'guesses' as to what could shift the potentials.  Store the results, using some XML or MySQL in your project, and record the usage of and include these results in the potential field results, creating a Class 1 self learning brain.

Remember, null, is the third state, and means unknown.  This is a powerful tool to acknowledge.

 

anything
blarg: Amashi