New phantom system - repeated player actions

The bottom line: The new phantom system temporarily works only for peaceful zones and duplicates the actions of the players, thereby better emulating online.

Config: gameserver\config\altrecbots.properties
Content:
# Is altrecbots extension enabled.
BotsEnabled = False

# Use dedicated executor. Otherwise gamed's internal will be used.
UseDedicatedExecutor = True
DedicatedExecutorThreads = 1
DedicatedScheduledThreads = 2

# Player action recording properties.
# Player actions sequence are the source of the actions bot will animate.

# Auto recording begins with the player appearing in a peace zone in a normal state
# and finishes with player ether leaving the zone or enters unanimatable state (e.g. private store).
# Only the dummiest actions are recorded: basic movement, item equip/unequip, skill use, class change, etc.
# Enable auto recording.
AutoRecordPlayerActions = True
# Min/Max players level for auto recording.
AutoRecordMinLvl = 10
AutoRecordMaxLvl = 78

# Ignore noble/hero/GM players for action recoding
AutoRecordIgnoreNoble = False
AutoRecordIgnoreHero = True
AutoRecordIgnoreGM = False
# Ignore player in those zones
AutoRecordIgnoreZones = [gludin_port1];[glludin_port2];[giran_port1];[giran_port2]
# Ignore teleporting if player teleport from one peace zone into another.
# Otherwise instantiate a new action sequence.
AutoRecordIgnorePeaceTeleport = True

# Minimum number of actions to be recorded
PlayerRecordMinSequenceLength = 10
# Maximum number of actions to be recorded
PlayerRecordMaxSequenceLength = 500
# Minimum recording time of actions (milliseconds)
PlayerRecordMinSequenceDuration = 10000
# Maximum recording time of actions (milliseconds)
PlayerRecordMaxSequenceDuration = 600000

# Instantiate a new action sequence recording again
AutoRecordNewSequence = True

# Action sequence playback properties
# Loops actions playback. Teleports back to the start location and repeat.
LoopPlayback = False

# Bot time to live
PlaybackBotTTL = 600000

# Wait interval before unspawn
BotsUnspawnIntervalMin = 5000
BotsUnspawnIntervalMax = 15000
# Wait interval after spawn
BotsFirstActionMin = 5000
BotsFirstActionMax = 15000

# Reaction to an offer to a bot to join a clan or party or trade
BotAcceptRequestChances = PARTY:10;CLAN:15;TRADE:40
BotDenyRequestChances = PARTY:10;CLAN:15;TRADE:40

# Start bot title
InitialBotsTitle =
# The chance of a title from a bot from the loaded list (nobles only)
IndividualBotTitleChance = 30

# Item enchant will be limited by this config
BotItemEnchantAnimateLimit = 10

# Bot spawn position randomization radius
PlaybackSpawnPosRandomRadius = 128
# Do not animate actions involving items with those ids
PlaybackIgnoredItemIds =

# Starting items for bots
# By default add SS/BSS
BotAdditionalInventoryItems = 5789:100,1835:100,1463:100,1464:100,1465:100, 1466:100, 1467:100, 5790:100, 2509:100, 2510:100, 2511:100, 2512:100, 2513:100, 2514:100

# Spawn of the bot with a certain class id probability modifier
# <classId1>:<mod1>;<classId2>:<mod2>...
# where <classIdN> - base class id
# <mod1> - 0 - will not be spawned, 0.5 - half, 1 normal, 2 - x2, ...
# Default: empty - equal probability for all.
PlaybackClassIdProbabilityMod =

# Chance in percent of a bot saying something.
BotTalkChance = 0
BotTalkChanceShout = 0
# Phrase reuse time.
PhraseReuseTime = 1000

# All bots account name
BotAccountName = bot_account

# Spawn strategy
# Constant - static spawn count
# OnlinePercent - percentage of online
BotSpawnStrategy = Constant(50)
Admin Commands:
//delete_bot_record -- Usage: admin_delete_bot_record <botId> | or just shift click on him
//kick_bot -- kick bot from game | or just shift click on him
//bots_strategy -- change strategy of spawn //bots_strategy OnlinePercent 10 | //bots_strategy Constant 50
//bots_disable -- turn off bots


SQL tables:
altrec_actions.sql - bot action list (move/skill/etc)
altrec_bots.sql - bot id, bot classes, bot status line noble
altrec_items.sql - items of bots
altrec_names.sql - bots names
altrec_phrases.sql - bot phrases
altrec_skills.sql - bots skills
altrec_subclasses.sql - bots subclasses list
altrec_title.sql - bot title
 
Last edited:
it is possible to make sure that the created BOTs have basic game items such as adena, potion in the inventory? to make them more real.
 
Probably the way things are going it will never happen.
because it constantly makes new things that the server wants.
It would be good to create bots that can go farm as well as sit and shop (sell/buy)..
 
Back
Top