EMMA - feedback, comments and questions

This forum is related to alpha maps and mods only.

Moderator: Forum Guards

EMMA - feedback, comments and questions

Postby Alex » Sat Apr 07, 12 11:51 am


About EMMA
EMMA is an extension of ANNA that was created for developers to use. It offers a mutator-like environment which allows a developer to influence the gameplay. In EMMA, mutators are called modules.

Below is a list of events/functions that can be used so far, yet are still in development. Should you have any comments, requests or whatsoever, be sure to post here!

function ScoreKill(pawn Killer, pawn Other)
This function is called when a pawn kills another pawn (Note: This function is not only called when a player kills another player, when a player kills another pawn, or vice versa, it's also called).

function NavigationPoint FindPlayerStart(Pawn Player, optional byte InTeam, optional string incomingName)
This function is called when a player is about to spawn, and a NavigationPoint needs to be found. If a module returns a NavigationPoint (thus not None), it will override the original code and will use that NavigationPoint for the player.

function PreLogin(string Options, string Address, out string Error, out string FailCode, out int bOverride)
This function is called when a player is trying to connect to the server. By setting the variable Error (which is empty by default) the player will be rejected/blocked from joining and the error message will be displayed (similar to the "Your IP address has been banned" message). If you keep the Error string to be empty and you set bOverride to true (or in this case to 1) it will accept the player, no matter what. Even if his IP is found in the IPPolicies, he will be allowed to join the server.

function HandleDeathNotification(Pawn killer, Pawn killee, out int bOverride)
This function is called when the game is about to notify all players that someone killed someone else. If you set bOverride to true, this message will never be displayed.

function Killed(pawn Killer, pawn Other, name damageType, out int bOverride)
This function is called when a player kills another player (i think). When setting bOverride to true, this kill will be ignored by the game, thus the player's score wont change.

function ChangeTeam(Pawn PawnToChange, out int NewTeam, out int bOverride)
This function is called when a player tries to change his team. You can modify his new team by changing NewTeam or block the entire action by setting bOverride to true. This means the player's team wont be changed.

The above list is not 'complete', as there are a few functions to be added soon, such as: check for victory conditions, adding support for custom scoreboards.

Should you have any questions, comments etc, please post here so I can possibly implement them into EMMA!
Posts: 8067
Joined: Wed Nov 12, 03 4:51 pm

Postby Aidan » Thu Apr 12, 12 2:39 am

Should have named it GUNTHER :P

Just when I had thought mods were dying in dx, here we are.

This is awesome!
User avatar
Posts: 6265
Joined: Wed Aug 02, 06 8:57 am
Location: The Great White North

Return to alpha laboratories

Who is online

Users browsing this forum: No registered users and 1 guest