Kadi: Difference between revisions

From ETM
Jump to navigation Jump to search
No edit summary
No edit summary
 
(21 intermediate revisions by the same user not shown)
Line 21: Line 21:
|[[General]]
|[[General]]
|Optional
|Optional
|<nowiki>[comment...],[message...],[colorvartext...],[colortext...],[on|off|toggle],[price],[amount],[number],[page],[nickname],[owner],[name],[shortcut],[color],[radius],[time],[percentage], [number_l], [amount_d], [on|off|choice],[true/false], [X.xx,Y.yy,Z.zz], [treetype], [ench1,ench2]</nowiki>
|<nowiki>[comment...],[message...],[colorvartext...],[colortext...],[on|off|toggle],[price],[amount],[number],[page],[nickname],[owner],[name],[shortcut],[color],[radius],[time],[percentage], [number_l], [amount_d], [on|off|choice],[true|false], [X.xx,Y.yy,Z.zz], [treetype], [ench1,ench2], [effect]</nowiki>
|-
|-
|[[General]]
|[[General]]
Line 29: Line 29:
|[[AccountCommands]]
|[[AccountCommands]]
|Todo
|Todo
|[name:account]
|[name:account] [:account]
|-
|-
|[[BoardCommands]]
|[[BoardCommands]]
Line 69: Line 69:
|[[EventCommands]]
|[[EventCommands]]
|Todo
|Todo
|x
|[event], [eventtype], [startTick], [tick], [repeating], [fixedloc], [anonymous], [rewardsignid]
|-
|-
|[[FindCommands]]
|[[FindCommands]]
|Todo
|Todo
|x
|[transId] - TODO: implement transaction sharing
|-
|-
|[[FSCommands]]
|[[FSCommands]]
|Todo
|Todo
|x
|done
|-
|-
|[[FSUserCommands]]
|[[FSUserCommands|ModelProfileCommands]]
|Todo
|Todo
|x
|'''renamed''' [profile]
|-
|-
|[[HeadCommands]]
|[[HeadCommands]]
|Todo
|Todo
|x
|[head]
|-
|-
|[[HomeCommands]]
|[[HomeCommands]]
|Todo
|Todo
|x
|[home], [homeother],
|-
|-
|[[ImageCommands]]
|[[ImageCommands]]
|Todo
|Todo
|x
|(skipped)
|-
|-
|[[ItemCommands]]
|[[ItemCommands]]
|Todo
|Todo
|x
|(skipped)
|-
|-
|[[KadiCommands]]
|[[KadiCommands]]
|Todo
|Todo
|x
|
|-
|-
|[[KadiCommandsHelper]]
|[[KadiCommandsHelper]]
|Todo
|Todo
|x
|
|-
|-
|[[LandAreaCommands]]
|[[LandAreaCommands]]
|Todo
|Todo
|x
|done
|-
|-
|[[LandCommands]]
|[[LandCommands]]
|Todo
|Todo
|x
|[landoption], [landmember], [chunkrotation], [shiftamount], [height], [biome]
|-
|-
|[[LibraryCmdCommands]]
|[[LibraryCmdCommands]]
|Todo
|Todo
|x
|(skipped) [libcmd]
|-
|-
|[[LibraryCommands]]
|[[LibraryCommands]]
Line 141: Line 141:
|[[MobCommands]]
|[[MobCommands]]
|Todo
|Todo
|x
|[mobmodel]
|-
|-
|[[ModelCommands]]
|[[ModelCommands]]
|Todo
|Todo
|x
|<nowiki>[model], [arm|head], [big|small] [visible], [modelSize], [modelrange] [reward], [goalname]</nowiki>
|-
|-
|[[MoneyCommands]]
|[[MoneyCommands]]
Line 173: Line 173:
|[[PlayerCommands]]
|[[PlayerCommands]]
|Todo
|Todo
|x
|[playermodel]
|-
|-
|[[PUserCommands]]
|[[PUserCommands]]
Line 185: Line 185:
|[[RewardCommands]]
|[[RewardCommands]]
|Todo
|Todo
|x
|x !reward! [goalname]
|-
|-
|[[RewardSignCommands]]
|[[RewardSignCommands]]
Line 197: Line 197:
|[[ShopCommands]]
|[[ShopCommands]]
|Todo
|Todo
|x
|[shop], [shoploc]
|-
|'''SkinCommands'''
|Todo
|[skin]
|-
|-
|[[ToolCommands]]
|[[ToolCommands]]
Line 229: Line 233:
|[[WarpCommands]]
|[[WarpCommands]]
|Todo
|Todo
|x
|[warp]
|-
|-
|[[WorldRestoreCommands]]
|[[WorldRestoreCommands]]
Line 396: Line 400:
<br />
<br />


==Pods==
*Home
**Map<World, List<Home>>  // SuffixSearch
**MaxHomes
*Backpack
**libItemStorage Map<LibId, Integer>
**storedStacks (onDeath Tools) LinkedList<String> // serialized stacks + meta?
**(flyFuel), (Oxygen)
*Chat
+ Syncronized loading/methods for Backpack
<br />
==Data splitting==
==Data splitting==
Pro: Limit filesize
Pro: Limit filesize

Latest revision as of 14:08, 20 May 2020

Latest Changes

  • Shows possible subcommands
  • Shows current syntax word and example text
  • Filters input based on partial matches


Command Interfaces

LandActionConfig

Interface Desc Keywords
General Forced [world],[player],[player,player]
General Optional [comment...],[message...],[colorvartext...],[colortext...],[on|off|toggle],[price],[amount],[number],[page],[nickname],[owner],[name],[shortcut],[color],[radius],[time],[percentage], [number_l], [amount_d], [on|off|choice],[true|false], [X.xx,Y.yy,Z.zz], [treetype], [ench1,ench2], [effect]
General Kadi (1st iteration)
AccountCommands Todo [name:account] [:account]
BoardCommands Todo (skipped)
ChannelCommands Todo [channel],[prefix...]
ChatCommands Todo (1st iteration)
ContainerCommands Todo (skipped)
CraftingCommands Todo [recipe], [libid], [resultlib], [0:libA,1:libB,5:libC], [enchantment], [level], [ignoreRestriction], [itemFlag]
CrateCommands Todo [crate], [cquality], [valuable?], [clibid], [libidinv]
EffectCommands Todo (skipped)
ElementCommands Todo (skipped)
EssentialCommands Todo (50% skipped)
EventCommands Todo [event], [eventtype], [startTick], [tick], [repeating], [fixedloc], [anonymous], [rewardsignid]
FindCommands Todo [transId] - TODO: implement transaction sharing
FSCommands Todo done
ModelProfileCommands Todo renamed [profile]
HeadCommands Todo [head]
HomeCommands Todo [home], [homeother],
ImageCommands Todo (skipped)
ItemCommands Todo (skipped)
KadiCommands Todo
KadiCommandsHelper Todo
LandAreaCommands Todo done
LandCommands Todo [landoption], [landmember], [chunkrotation], [shiftamount], [height], [biome]
LibraryCmdCommands Todo (skipped) [libcmd]
LibraryCommands Todo x
LibraryItemCommands Todo x
LotteryCommands Todo x
MagicCommands Todo x
MailCommands Todo x
MobCommands Todo [mobmodel]
ModelCommands Todo [model], [arm|head], [big|small] [visible], [modelSize], [modelrange] [reward], [goalname]
MoneyCommands Todo x
NaviCommands Todo x
PageCommands Todo x
PanelCommands Todo x
PermCommands Todo x
PGroupCommands Todo [pgroup]
PlayerCommands Todo [playermodel]
PUserCommands Todo [puser]
RecordingCommands Todo x
RewardCommands Todo x !reward! [goalname]
RewardSignCommands Todo x
ScreenCommands Todo x
ShopCommands Todo [shop], [shoploc]
SkinCommands Todo [skin]
ToolCommands Todo x
TradeCommands Todo x
TransactionCommands Todo x
UserCommands Todo [flyeffect]
UserConfigCommands Todo x
UserGroupCommands Todo x
UserStatsCommands Todo x
WarpCommands Todo [warp]
WorldRestoreCommands Todo x
WorldSettingCommands Todo x

Tab-completion Keywords

Forced registered keywords
Keyword Provides Examples
[world] Shows all worldnames
[player] Shows any at least initialized(looked up) player
[player,player] Same as player but allows comma listing
[playerOn] Show currently online players
Optional Keywords if not overwritten
Keyword Provides Examples
[on|off|toggle] Show matching boolean state
[price] double number
[amount] double number
[radius] double number
[number] integer number
[page] integer number
[nickname] 'any' string without spaces
[name] 'any' string without spaces
[owner] same as [player]
[comment...] endless text without colors
[message...] endless text without colors
[colortext...] endless text with colors ('&')
[colorvartext...] endless text with colors and variable usage like %name%
[shortcut] single char
[color] ChatColor enum (dark_blue, light_purple, gold)
[time] Amount of time: 1d5h30m, 1m30s, 21d
Kadi plugin additional keywords
Keyword Provides Examples
[pgroup] Name of a permission group
[puser] Name of a permission user
[name:account] Money transfer. This on is complex. See below
[channel] Name of a chat channel
[prefix...] Setting a prefix for something (chat channel)

Sending money is allowed with a LOT of variants. Placeholder is [name:account] .

  1. pay Kademlia 5      <- RESOLVE PLAYERNAME CAccess.getPlayerIdService().getNameAnyMatching(t);
  2. pay :myacc 5       <- OWN ACCOUNT Nickname lookup
  3. pay *100500300    <- RESOLVE ACCOUNT-NUMBERS / Show 'known' numbers. Numbers used lately + server numbers and (numbers on their friends if allowed)
  4. pay *aldi        <- TRADEMARKED / Simply show all numbers that are valid in theory? Or ones marked as "public"
  5. (ADMINS) pay Kade:1005003    <- Pre-Filtered by username / Show accounts of the user
  6. (ADMINS) pay Kade:test 5  <- RESOLVE PLAYERNAME + has a named account (admin only? as this makes private accounts searchable)

SuffixTree

SuffixTree update implementation needed for:

  • PanelManager - Todo convert to AbstractAddableManager?
  • LibManagerImpl
  • MailManager
  • PermManager
  • PUserManager
  • ShopManager
  • WorldSettingsManager
  • AccountManager
  • ModelProfileManager
  • UserManager
  • UserStatsManager


Other:

TransactionManagerImpl - Not using data system

MailManager (?; remove?)


Pods

  • Home
    • Map<World, List<Home>> // SuffixSearch
    • MaxHomes
  • Backpack
    • libItemStorage Map<LibId, Integer>
    • storedStacks (onDeath Tools) LinkedList<String> // serialized stacks + meta?
    • (flyFuel), (Oxygen)
  • Chat


+ Syncronized loading/methods for Backpack

Data splitting

Pro: Limit filesize

Pro: better memory management later on (dynamic mailprofile unloading)

Con: User commands interface differs for direct user methods & 'outsurced' data to a X-Manager

Con: duplicated development of Component/Manager. extends AbstractSuffixComponent<T,V> / AbstractManager<T,V> extends SuffixSearchable<T,V>


Rule: Don't save data in user? Only option values?


UserComponents

OptionsComponent - Map<Option<UserOptionType,?>, Object> data does not fit SuffixSearch interface

HomeComponent (vs MailManager)