From The Mana World
(chat interaction) |
|||
Line 33: | Line 33: | ||
*Sending dialog box messages (and catch the players answer?) | *Sending dialog box messages (and catch the players answer?) | ||
*Maybe control GUI windows? (could be useful for tutorial) | *Maybe control GUI windows? (could be useful for tutorial) | ||
==Chat interaction== | |||
*Log chat channels | |||
*Send messages to chat channels | |||
*Filter chat channels (useful for flexible censorship systems) | |||
*access / control users in chat channel | |||
==AI== | ==AI== |
Revision as of 12:32, 12 August 2008
ToDo List for script bindings on the new server:
World Interaction
- Modify the map
- Collision
- Tile appearance
- Overlays
- Music
- Game rules like PvP allowed/denied.
- Activate weather effects
- Query and set persistent global variables
- Spawn particle effects
- Global announcements
Being interaction
- Spawn beings
- Move beings
- Hurt beings
- Make beings perform different actions
- Remove beings
- Callback functions for events like
- death
- leave game
- change map
- getting hurt
- Get beings in area
- Apply/Remove status effects to beings
- Query and set being attributes
- GM Cheats
Player interaction
- Sending private chat messages
- Sending dialog box messages (and catch the players answer?)
- Maybe control GUI windows? (could be useful for tutorial)
Chat interaction
- Log chat channels
- Send messages to chat channels
- Filter chat channels (useful for flexible censorship systems)
- access / control users in chat channel
AI
- Command monsters
- Override attack target selection
- Override move target selection
- Make the monster use combat abilities
- Override spawn and death events
Idea: class ScriptedMonster is a derivate from class Monster. It replaces every member function of the monster class with a call to a LUA function. This LUA function can call the function from the base class. This would allow to selectively replace or complement any behavior of the monster. This requires:
- Access to all member variables and functions of class Monster (including protected variables)
General
- Set timers
- Querry external data sources (already possible with LUA interpreter?)
- Local file
- HTTP
- Database
Inter-map scripting
- Executing script code in the context of the script object of another map which might even be on a different server.