PDA

View Full Version : AIMS



Alfredo
11-26-2018, 03:10 PM
Hello, Forum.

I've recently completed initial development of something I call AIMS: the Artificially Intelligent Miniatures System.

By way of this post, I'd like to gauge (some of) the TTS community's interest in AIMS. Below, please find an overview and list of the features as AIMS exists at the moment. I'd be much obliged for any responses!

Kind regards,

-Al

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-

Overview

The primary goal of AIMS is to imbue Tabletop Simulator (TTS) figurines with basic, yet useful, artificial intelligence. This enables both cooperative and solo play opportunities, wherein one or more human players can fight in a skirmish against AIMS-controlled figurines. To fully realize this vision, AIMS has been built to work with the Very Simple Generic Miniatures Rules (VSGMR)—just the basics, though. VSGMR offers a clear, succinct means to wage miniature warfare skirmishes; the rules have been slightly updated for AIMS use and are available as a TTS asset. The original VSGMR rules may be located online at: http://www.dominowriting.com/SimpleMinisRevised.pdf.

Features List

* Automated Movement

- Pathfinding


. Uses the classic A* (pronounced, A-Star) algorithm adapted for 3D
. To a target
. To where a target was last seen (in circumstances where a target may simply have ducked behind some barrier)
. To the nearest “boss” figurine for the AIMS team
. Randomly when all else fails (includes moving nowhere in some situations)

- Targets of opportunity can be selected during movement
- Flight (for figurines that can be airborne)
- Transition between flying and landing (for figurines that can both fly and engage in ground-based melee)
- Chance of retreating when at least half of an AIMS team’s figurines have been defeated

* Automatic target selection based on sensory distance and line-of-site (via ray casting)

* Attacks

- Melee
- Distance
- Rational selection process between melee and distance (only one or the other is permitted during a given figurine’s turn): the stronger attack is favored, proximity to any target is also taken into account

* Figurines

- Anything works, so long as the model is sized appropriately (for a 2”x2” grid)
- AIMS scripting is automatically added to a given figurine by placing the figurine onto the Grid Controller object (see Grid Controller notes below)
- Currently supports an eclectic mix of figurine classes: zombies, wolves, Warhammer 40K Space Marines, and aliens (like from the Alien movies)
- Multiple groups of AIMS figurines may be used in the same game (e.g., both a group of zombies and a pack of wolves may be played by AIMS simultaneously)
- Very easy to add any number of other figurine classes, though simple, script editing is required
- Through script edits, each class of figurine can be tailored with respect to its VSGMR stats, and to denote what sort of melee and/or distance weapon(s) it has and whether or not it can fly

* Grid Controller

- Enables creating, updating, and removing the grid of markers used by AIMS pathfinding code
- Also, enables tracking and controlling game turns and resetting a game to its start (including the reset of AIMS figurines’ AI-related data)


* All game-related data (e.g., marker grid, AIMS figurines) are savable and will persist between table loads

Tragic
11-26-2018, 07:42 PM
This seems like a awesome project.. I would love to see a demo of it in action... the only thing is that everygame is so different. For this to be a workable tool for modders to use you will have to make it very editable. Even games with similar miniature rules will have different stuff depending on the scale of the boards and grids and wot not. Like a AI system for Warhammer wouldn't help Star Wars Legion or War Machine...

On the otherside, it dosn't have to either, as long as people get that. A tool like this could be a big part of moving TTS into creator content, rather than conversion content. We have seen a increase in prototypes and games that have never existed outside of TTS.. but tools like this could lead to interesting OC.

All in all I think this is a pretty exciting sounding project.

Alfredo
12-28-2018, 08:54 PM
Thanks for your feedback, Tragic!

I've continued refining AIMS; recently I've added "strategic beacons" (special markers one can place around the game board to denote locations that are to be held) and the ability for "boss" AIMS figurines to share their targets with underlings. The beacon thing makes for interesting play, since it creates a goal in addition to simply eliminating the enemy.

I'll be carrying out some play testing with a small group of chums next week.

At some point, I'll need to post images and/or a video about all of this.

-Al

dzikakulka
01-07-2019, 01:09 PM
Looks interesting, would be definitely nice to see the code, do you have some repo for it maybe?

Alfredo
01-31-2019, 09:19 AM
Hi, all.

I've reached a point where AIMS seems ready for public consumption. All of the code (roughly 5,300 lines [including source code documentation]) is available to the world under a Creative Commons license ( https://creativecommons.org/licenses/by-nc/3.0/us/).

In addition to the features listed earlier, I've included a new mechanism wherein AIMS can randomly prompt the players to add AIMS-controlled figurines into a game at locations near the players. With this, it isn't possible to know in advance when or exactly where an enemy will show up.

I've published a workshop, but there's a problem: for some reason, the workshop isn't showing up under TTS' public workshops. Anyone have any thoughts on how I might troubleshoot? As you might guess, I've ensured the workshop is public, gone through my Steam account settings, looked through TTS community posts, etc.

-Al

Alfredo
01-31-2019, 12:19 PM
Here's a direct link to the workshop, by the way.

https://steamcommunity.com/sharedfiles/filedetails/?id=1640107535

-Al