summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--server/scripts/evol_script_commands.txt79
-rw-r--r--todo.md26
2 files changed, 97 insertions, 8 deletions
diff --git a/server/scripts/evol_script_commands.txt b/server/scripts/evol_script_commands.txt
index 2af03cb..9f5b57b 100644
--- a/server/scripts/evol_script_commands.txt
+++ b/server/scripts/evol_script_commands.txt
@@ -1009,3 +1009,82 @@ Return false if id is not instance id.
Example:
.instid = 1;
mes(str(isinstance(.instid));
+
+
+
+
+---------------------------------------
+//=====================================
+// TMW2 Custom Script Commands
+//=====================================
+---------------------------------------
+
+*getguildinfo(<guild id>);
+
+Records in mapreg info about a guild. The array Index is the Guild ID.
+This command is meant to be used in GvG setup, where you might need the data from
+several guilds at once and it is better to have them saved to memory.
+
+Upon executing this,
+
+$@guildinfo_lvl[] is a global temporary array which contains the guild level
+
+$@guildinfo_avg[] is a global temporary array which contains the average player
+ level within a guild.
+
+$@guildinfo_exp[] says the current guild EXP. It's a hack and will be removed.
+
+$@guildinfo_nxp[] says the EXP needed to lvl up. It's a hack and will be removed.
+
+Returns 0 on failure.
+
+---------------------------------------
+*getguildlvl(<guild id>);
+*getguildavg(<guild id>);
+*getguildexp(<guild id>);
+*getguildnxp(<guild id>);
+
+Basically the same as getguildinfo(), but doesn't saves to mapreg, instead,
+returns the value. This is meant to be the most widely used by NPC scripts.
+
+Returns -1 on failure.
+
+---------------------------------------
+
+*setguildrole(guild id, gpos id, gperm id, exp tax, role name);
+
+This does what ManaPlus will eventually feature, allowing to change a guild role.
+All parameters are required.
+---------------------------------------
+
+*getguildmember(<guild id>{, <type>});
+
+This command will find all members of a specified guild and returns their names
+(or character id or account id depending on the value of "type") into an array
+of temporary global variables.
+
+Upon executing this,
+
+$@guildmembername$[] is a global temporary string array which contains all the
+ names of these guild members.
+ (only set when type is 0 or not specified)
+
+$@guildmembercid[] is a global temporary number array which contains the
+ character id of these guild members.
+ (only set when type is 1)
+
+$@guildmemberaid[] is a global temporary number array which contains the
+ account id of these guild members.
+ (only set when type is 2)
+
+$@guildmembercount is the number of guild members that were found.
+
+$@guildmemberpos[] is the position ID of every member found.
+
+The guild members will be found regardless of whether they are online or offline.
+Note that the names come in no particular order.
+
+Be sure to use $@guildmembercount to go through this array, and not
+getarraysize(), because it is not cleared between runs of getguildmember().
+
+For usage examples, see getpartymember().
diff --git a/todo.md b/todo.md
index fe5ed45..e6ea7ef 100644
--- a/todo.md
+++ b/todo.md
@@ -5,16 +5,22 @@
* [ ] (IMPORTANT) Discuss with Saulc about Nahrec the Heavy Armor Maker and about Warlord set
* Bring the second helmet from Warlord Set from TMW-BR too, very good quest
-* [ ] Guild System
- * [ ] Guild House with ADM NPCs
- * [ ] Override built-in position system because Script Access
- * [ ] Override built-in guild exp system because Script Access
+* [x] Guild System
+ * [x] Guild House with ADM NPCs
+ * [x] Override built-in position system because Script Access
+ * [x] Override built-in guild exp system because Script Access
* [ ] Guild Level increase treasure chests the guild recives
-* [ ] NPC_<Ele>ATTACK to all monsters (overpopulating mob skill db)
+* [ ] Guild GvG
+* [ ] NPC_<Ele>ATTACK to all relevant monsters (overpopulating mob skill db)
* [ ] Braknar Shield
* [ ] Add Baktar
* [ ] Add Khafar
* [ ] town.txt - Users coming back from death need might need LOCATION$ reset
+* [ ] Craft Systems
+ * [ ] Alchemy Recipes
+ * [ ] Smith Recipes
+* [ ] Real Estate
+ * [ ] Apartment Building.
## Game Lore
* [ ] Next Main Storyline movement
@@ -26,6 +32,8 @@
* We'll start using Karma System for real, and give you the three legacies based
on that and affected by player choice.
* Next movements are building Karma points, using main storyline frame.
+ * [ ] Lua is a good NPC if you like the "open world" style, but add the guard NPC...
+ * [ ] And then, use this Guard NPC to sort player priorities
* [ ] Next City Development
* Nivalis still needs to be finished with Angela and Blue Sage.
* This will move city development to Frostia and Lilit next.
@@ -35,10 +43,11 @@
* [x] Mirror that house multiple times
* [x] Add a house in Halinarzo too (cheapest ingame)
* [ ] The castle in the Road
+* [ ] Apartment Building
### Guild System
-* [ ] Guild House
-* [ ] Guild Storage NPC
+* [x] Guild House
+* [x] Guild Storage NPC
* [ ] Guild Wars and great rewards
### Minigames
@@ -57,13 +66,14 @@
* [ ] Review refine prices?
### Mapping
-* [ ] Saulc's Cave (#tmw2-dev March 5th)
+* [x] Saulc's Cave (#tmw2-dev March 5th)
* [ ] Pirate Cave
* **OF COURSE** I mean TMW-BR Pirate's quest. And of course it is in hurscald.
Saying more than that is spoilers, so I'll stop now. Unless Saulc have ideas.
* [ ] Imperial PVP Arena
* Near Frostia, to elect the PVP King, see #admin
* [ ] Blue Sage Quest
+* [ ] Racing Maze
### Magic Development
* [ ] Bring Sagratha