Food Clan .::. Zombie Assassins
image Navigation image
 
· Search Our Site

· Join [ZÅ]

Important Links
· Home
· Special Requests
· Allies & Friends

Features
· Newsletter
· Fan Fiction
· YouTube Page
· Hall of Fame

Rules & Information
· Website Rules
· Membership Rules
· Server Rules & Info
· Classic Server Password Test
· The History of [ZÅ]
· Site & Server Admins
· Staying Safe Online


Other
· News Categories
· Downloads
· Photo Gallery
· Hall of Shame
· I DON'T THINK RAZ IS GOD
 
image image
image Last Seen Users image
 
· [ZÅ]Razberry 1 day
· [ZÅ~V]Stuntman 3 days
· [ZÅ]SlimJim 1 week
· [ZÅ]Noobo 4 weeks
· [LÅZY]LazyTarget 7 weeks
· [ZÅ~V]DrkInferno14 weeks
· [ZÅ]Riptide23 weeks
· ZA Flax24 weeks
· [ZÅ]ODST-LoL28 weeks
· [ZÅ]JP28 weeks
· lkshadow32 weeks
· [ZÅ]MasterA42 weeks
· [ZÅ]Giants42 weeks
· [ZÅ]Dudeman42 weeks
· [ZÅ]Link-MC--LoL-CSGO44 weeks
· [ZÅ]Innervision49 weeks
· [ZÅ~V]Phoenix52 weeks
· [ZÅ~V]BrickSquad62 weeks
· {FC}Cookie65 weeks
· [ZÅ]Bvigil68 weeks
· [ZÅ~V]Boxhead70 weeks
· [ZÅ]Vlexis76 weeks
· {FC}Wings76 weeks
· [ZÅ~V]Buck77 weeks
· {FC~V}Coyote145 weeks
· [ZÅ~V]TheHatofLove152 weeks
· Kennan159 weeks
· [ZÅ]Paradox-MC-160 weeks
· zuko176 weeks
· A§H»ĴΘΘĶ183 weeks
· [ZÅ]Vaxjo185 weeks
· coldplay99185 weeks
· [ZÅ~V]RAGE186 weeks
· samtheman32190 weeks
· [ZÅ]ninja191 weeks
· [ZÅ]Code191 weeks
· FRINGE191 weeks
· [ZÅ]Leve191 weeks
· [ZÅ~V]Ezrab191 weeks
· BMF191 weeks
· MRBILL191 weeks
· [ZÅ~V]Hercules194 weeks
· ginny18232 weeks
· [ZÅ~V]Cloverton270 weeks
· [ZÅ]Carnage-WoWs286 weeks
· [ZÅ]Mist-Stn287 weeks
· theatticus295 weeks
· [ZÅ~V]Star300 weeks
· [ZÅ~V]Neo303 weeks
· [ZÅ]Saviour312 weeks
· [ZÅ~V]Irock23313 weeks
· [ZÅ]Revenge-Stn323 weeks
· Habu328 weeks
· [ZÅ~V]Althor340 weeks
· Founder~[ZÅ~V]Trunks340 weeks
· [ZÅ~V]Llamas346 weeks
· [ZÅ~V]Bagels348 weeks
· Founder~[ZÅ~V]Coke354 weeks
· Teemo354 weeks
· Rabidtaco355 weeks
· [ZÅ~V]BlackAdder-LoL362 weeks
· [ZÅ~V]Ice369 weeks
· Hav377 weeks
· [ZÅ~V]Huggy381 weeks
· [ZÅ~V]RealmHunter383 weeks
· [ZÅ]Tulip-LoL-CSGO384 weeks
· [ZÅ~V]Pizzleini388 weeks
· [ZÅ~V]Martyr390 weeks
· Java396 weeks
· SpartanJaz400 weeks
· [ZÅ~V]Luna400 weeks
· [ZÅ~V]Kíttý413 weeks
· [ZÅ~V]Sinder415 weeks
· arbiterspar422 weeks
· Bacon427 weeks
· Magnum430 weeks
· H4WK438 weeks
· [Lagzy]449 weeks
· [ZÅ]Whatmesage457 weeks
· [ZÅ~V]Suika459 weeks
· Zidane459 weeks
· [ZÅ~V]Pieeater460 weeks
· [ZÅ~V]Numpty460 weeks
· [ZÅ]Swicey460 weeks
· [ZÅ~V]ChAr461 weeks
· Smile.jpg461 weeks
· Ronald461 weeks
· Bane461 weeks
· [ZÅ]Soulcyon-LoL461 weeks
· TacoCookie461 weeks
· [ZÅ]Buckwheat461 weeks
· [ZÅ~V]PirateKing-LoL461 weeks
· ShawnPeezy472 weeks
· [ZÅ~V]JOSEPH5486 weeks
· xXKrysisXx492 weeks
· Chuck492 weeks
· Homeless494 weeks
· Warrior494 weeks
· [ZÅ~V]Smurf496 weeks
· JunkyMonkey496 weeks
 
image image
image View Thread image
 
 Print Thread
Phasor [Halo PC Infection]
oxide
#1 Print Post
Posted on 01/02/2011 00:59:19
Newbie


Posts: 6
Joined: 02.01.11

Hi,

I'm making a program for Halo PC, Phasor. Phasor does some stuff internally (hash rcon, more rcon commands etc) and does some other stuff externally, via scripts (Lua). I wanted to make an infection-style mod, but I wanted to let people customize it. That's where the script system comes in.

Phasor implements scripts either locally or globally. If a script based on the current map/gametype isn't found then a global one is loaded. The scripts have various exported functions that get called when certain events happen. The scripts can also call exposed Phasor functions. This is how I'm implementing Infection, it's a way of introducing the scripting interface.

Anyway, I'm posting here because I want ideas. What kind of things do you want to be able to do? Below are the functions that are done. Post ideas. Please.

Events (done):
[list]
[*]void OnScriptLoad(processid) - Called when the script is loaded. Process id is the parameter.
[*]void OnScriptUnload() - Called when the script is about to be unloaded.
[*]void OnNewGame(map) - Called when a new game is starting, the map name is passed.
[*]void OnGameEnd(type) - Called when a game "ends". Type specifies the event, 1 is the game just finished (still ingame F1 menu displayed), 2 is the post game, 3 is when quit shows up in post game.
[*]int OnTeamDecision(cur_team)- Called when a player is being assigned a team (as they join). cur_team is their current team and the return value is the actual team they are to join.
[*]void OnPlayerLeave(player, team) - Called when a player leaves.
[*]void OnPlayerKill(killer, victim) - Called when a player kills another player.
[*]bool OnTeamChange(relevant, player, team, dest_team) - Called when a player is changing teams. Relevant specifies whether or not the return value is considered. If relevant is 1 the return value is used to determine whether or not the player can change team.
[*]bool OnWeaponPickup(player) - Called when a player attempts to pickup a weapon. Return value determines whether or not they're allowed to.
[*]bool OnVehicleEntry(player) - Called when a player attempts to enter a vehicle. Return value determines whether or not they're allowed to.
[*]bool OnWeaponReload(player) - Called when a player attempts to reload. Return value determines whether or not they're allowed to.
[*]bool OnAmmoPickup(player) - Called when a player attempts to pickup ammo. Return value determines whether or not they're allowed to.
[*]bool OnGrenadePickup(player) - Called when a player attempts to pickup grenades. Return value determines whether or not they're allowed to.
[/list]

Planned:
[list]
[*]void OnPlayerSpawn(player) - Called when a player spawns, just after their object is assigned. You can change ammo and have it sync if done HERE.
[*]bool OnFallDamage(player) - Called when a player experiences fall damage. Return 0 to stop the fall damage.
[/list]

Exported functions that scripts can use:
[list]
[*]void hprintf(char* msg) - Writes text to the server console
[*]void changeteam(DWORD player) - Changes a player's team
[*]DWORD getteam(DWORD player) - Returns a player's current team.
[*]void setspeed(DWORD player, float speed) - Sets a player's speed (default is 1.0).
[*]void say(char* msg) - Sends a message to the server. (atm multibyte is passed and coverted into unicode, idk how to do unicode in Lua).
[*]void privatesay(DWORD player, char* msg) - Sends a server message to a specific player
[*]void registertimer(DWORD id, DWORD delay, DWORD userdata, char* callback) - Sets up a timer that calls the function 'callback' when the delay runs down. The callbacks return value is 0 or 1, 1 indicates the timer should repeat, 0 deletes the timer.
[*]char* getname(DWORD player) - Returns the multibyte representation of a player's name.
[*]char* gethash(DWORD player) - Returns a player's hashcode
[*]int getteamsize(DWORD team) - Returns the size of the specified team
[*]void svcmd(char* cmd) - Executes a server command
[/list]

Planned:
[list]
[*]void setdmgmodifier(DWORD weapon, float modifier)
[*]void sethealthmodifier(DWORD player, float modifier)
[*]DWORD getweapon(DWORD player, DWORD order)
[*]DWORD getcurrentweapon(DWORD player)
[/list]
 
Send Private Message
ninja
#2 Print Post
Posted on 01/02/2011 07:26:41
User Avatar

Super Admin


Posts: 4174
Joined: 15.11.10

Why do we need this?
steamsignature.com/status/english/76561198019046882.png

i.imgur.com/EzcOjDS.png
My brain is open.
- Paul Erdős
 
Send Private Message
oxide
#3 Print Post
Posted on 01/02/2011 07:31:58
Newbie


Posts: 6
Joined: 02.01.11

Maybe because some people, who aren't lazy, want to customize how the server runs. Just a thought.
Edited by oxide on 01/02/2011 07:35:10
 
Send Private Message
ninja
#4 Print Post
Posted on 01/02/2011 07:33:29
User Avatar

Super Admin


Posts: 4174
Joined: 15.11.10

oxide wrote:
Maybe because some people, who aren't lazy, want to customize how the server runs. Just a thought.

Fair enough. Some of it sounds quite cool...
steamsignature.com/status/english/76561198019046882.png

i.imgur.com/EzcOjDS.png
My brain is open.
- Paul Erdős
 
Send Private Message
ZA Googly
#5 Print Post
Posted on 01/02/2011 11:00:19
User Avatar

Numpty


Posts: 1251
Joined: 14.11.10

Hmmm... I didn't totally understand the scripts themselves... but you sound like you know what you are doing so.. I'll leave this up to the leader.
I hate lag
 
Send Private Message
ZA numpty
#6 Print Post
Posted on 01/02/2011 11:42:15
User Avatar

ShawnPeezy


Posts: 4430
Joined: 16.11.10

... OW MY HEAD HURTS. i have no clue what this is. im so confused. lets let slim deal with all the techy stuff.
 
Send Private Message
ZA Ice
#7 Print Post
Posted on 01/02/2011 12:40:05
User Avatar

Wanker


Posts: 599
Joined: 16.11.10

Eh, I've been wanting a server tool to help control the server for zombies when there are noobs, but that's up to Slimy to get it or not.

i855.photobucket.com/albums/ab117/iceyhell13/IceFrosty.jpg
 
Send Private Message
FC_Cookie
#8 Print Post
Posted on 01/02/2011 12:54:15
User Avatar

Super Admin


Posts: 358
Joined: 20.11.10

who is oxide???
 
Send Private Message
ZA Ice
#9 Print Post
Posted on 01/02/2011 12:59:17
User Avatar

Wanker


Posts: 599
Joined: 16.11.10

Random guy who made a zombie server scripting tool and is, from the sound of it, offering it to us by asking us what we want in it.

i855.photobucket.com/albums/ab117/iceyhell13/IceFrosty.jpg
 
Send Private Message
FC_SlimJim
#10 Print Post
Posted on 01/02/2011 13:39:52
Super Admin


Posts: 4725
Joined: 14.11.10

Oxide is a halo programmer, once in SS. ive known & used his products for a while now. also, show some respect for alot of the tools that we use (more so me on behalf of you) are designed & made by oxide
 
Send Private Message
ZA Ice
#11 Print Post
Posted on 01/02/2011 13:44:56
User Avatar

Wanker


Posts: 599
Joined: 16.11.10

Well he is random to me because I've never seen him before.

i855.photobucket.com/albums/ab117/iceyhell13/IceFrosty.jpg
 
Send Private Message
FC_Cookie
#12 Print Post
Posted on 01/02/2011 15:06:50
User Avatar

Super Admin


Posts: 358
Joined: 20.11.10

FC_SlimJim wrote:
Oxide is a halo programmer, once in SS. ive known & used his products for a while now. also, show some respect for alot of the tools that we use (more so me on behalf of you) are designed & made by oxide


ok, thnx slim, i never heard about him and he just popped up so i was curious Wink
 
Send Private Message
RazNinjaMike
#13 Print Post
Posted on 01/02/2011 19:37:48
User Avatar

Moderator


Posts: 4586
Joined: 20.11.10

nice oxide great job!
 
Send Private Message
Rabidtaco
#14 Print Post
Posted on 01/02/2011 21:54:00
Senior Member


Posts: 305
Joined: 16.11.10

respect oxide. is that really how halo is programmed? I get the booleans and voids and stuff because I know a tiny bit, but does the code really look like that?
Member of ZÅ Feb. 19th, 2010 - May 15th, 2011
memedepot.com/uploads/0/406_what_the_fark_is_this.jpg
24.media.tumblr.com/tumblr_l4zjqarbQP1qca3dmo1_400.jpg
 
Send Private Message
FC_SlimJim
#15 Print Post
Posted on 01/02/2011 22:02:39
Super Admin


Posts: 4725
Joined: 14.11.10

no, hes using a diff system. lua in fact is most famously used with video games like Garry's Mod. but its also used heavily in many applications.
 
Send Private Message
ZA 2
#16 Print Post
Posted on 01/02/2011 23:56:29
User Avatar

Numpty


Posts: 1173
Joined: 15.11.10

Sounds cool.. and long. lol. nice anyway
i904.photobucket.com/albums/ac247/ApplePie111/delete-windows-yes.png

i1089.photobucket.com/albums/i345/AJRead2/ocelotbannerjpg.jpg
 
http://numberstunts.wetpaint.com Send Private Message
oxide
#17 Print Post
Posted on 01/03/2011 01:19:06
Newbie


Posts: 6
Joined: 02.01.11

Halo is programmed in C++ (like Phasor), the above code is some C++ function declarations. Well, tbh they're not really C++ declarations as I didn't include the argument types. Below is a C++ function.. Well more C as C++ is object oriented.

// This function gets a player's object data
LPBYTE GetObjectAddress(int mode, DWORD reqData)
{
// Make sure request data is valid
if (reqData == -1)
return 0;

WORD hi = (reqData >> 16) & 0xFFFF;
WORD lo = (reqData & 0xFFFF);

LPBYTE lpObjectList = (LPBYTE)*(DWORD*)UlongToPtr(0x744C18);

if (lo < (*(WORD*)(lpObjectList + 0x20)))
{
LPBYTE objPtr = (LPBYTE)ULongToPtr(*(DWORD*)(lpObjectList + 0x34) + (*(WORD*)(lpObjectList + 0x22) * lo));

if (!*(WORD*)objPtr)
return 0;

LPBYTE finalPtr = 0;
if (!hi)
finalPtr = objPtr;
else if (hi == *(WORD*)objPtr)
finalPtr = objPtr;

if (!finalPtr)
return 0;

if (mode < (1 << finalPtr[2]))
return (LPBYTE)*(DWORD*)UlongToPtr(finalPtr + 8);
}

return 0;
}
 
Send Private Message
ninja
#18 Print Post
Posted on 01/03/2011 12:42:34
User Avatar

Super Admin


Posts: 4174
Joined: 15.11.10

I agree with the above.
steamsignature.com/status/english/76561198019046882.png

i.imgur.com/EzcOjDS.png
My brain is open.
- Paul Erdős
 
Send Private Message
ZA Wunder Rofl
#19 Print Post
Posted on 01/03/2011 20:14:28
User Avatar

Member


Posts: 206
Joined: 16.11.10

what... ~hmm~
i.imgur.com/1c2MQ.jpg
 
Send Private Message
FC Wings
#20 Print Post
Posted on 01/03/2011 20:25:44
User Avatar

Super Admin


Posts: 4425
Joined: 16.11.10

i get all of it exept this
WORD hi = (reqData >> 16) & 0xFFFF;
WORD lo = (reqData & 0xFFFF);
orig00.deviantart.net/ffbe/f/2014/070/6/b/minato_namikaze_by_danzt-d79vc0c.png
steam.mmosvc.com/76561198043580328/v1.png
 
Send Private Message
Jump to Forum:
 
imageimage
image Login image
 
Username

Password



Not a member yet?
Click here to register.

Forgotten your password?
Request a new one here.
 
image image
image Shoutbox image
 
You must login to post a message.

RazNinjaMike
08/07/2026 16:28:22
hmm

Drkinferno
04/30/2026 16:29:13
not dead

stunt1man
02/17/2026 17:22:06
Still alive. ~B_Slap~

Hobo
02/16/2026 21:44:26
Wassup gang ~craptacular~

stunt1man
01/30/2026 12:29:22
Anytime I post something in the thread, it's not visible.

stunt1man
01/27/2026 20:09:23
The ISP blocked you.

Target
12/29/2025 21:50:19
Ditto! Grin

stunt1man
12/28/2025 16:40:54
Happy new year. ~noob~

Target
11/27/2025 12:34:23
Happy Thanksgiving :3

Target
10/31/2025 09:30:28
Happy Halloween everyone! Smile

Target
10/25/2025 09:09:20
https://www.youtub
e.com/watch?v=AMGJ
7OMqyvI woah

stunt1man
10/24/2025 16:32:18
Hola Papi!

Link
09/29/2025 23:37:58
OMG HI GUYS!!! I was able to finally log in after so many years!!! I hope everyone is doing well in life! Man, time flies!

RazNinjaMike
09/26/2025 06:40:34
if you dont got discord, go get it. its great for chatting as well Cool

stunt1man
09/21/2025 11:10:02
~Nana~

Drkinferno
09/15/2025 20:05:42
no, I log in time to time

stunt1man
09/07/2025 12:26:37
~argue~

Innervision
08/30/2025 14:52:46
Hope everyone is doing well, good ol shoutbox lol Smile

stunt1man
07/31/2025 18:41:06
I had replied to the thread and it broke. ~ban?~

FC_SlimJim
06/22/2025 20:43:11
idk what happened with that thread cause i cant access it either lol

 
image image
image image