Page 12 of 60 FirstFirst ... 2 10 11 12 13 14 22 ... LastLast
Results 111 to 120 of 599

Thread: SAPP

  1. #111
    {XG}Clan founder {XG}Gijs007's Avatar
    Join Date
    Sep 2007
    Location
    Netherland
    Posts
    181

    Re: SAPP

    sehe isn't asking for donations, its just that a few people told him they would donate if he would fix certain things and they didn't so far.

    btw: I will donate you some cash later as I already told you
    for your information: {XG}clan is also accepting donations for hosting servers and sapp website

  2. #112

    Re: SAPP

    Quote Originally Posted by supersniper View Post
    well gandanur is also in partership with halorank is it not?
    Yes it is, but I'll leave that story for some other time.

  3. #113
    suum cuique sehe's Avatar
    Join Date
    Aug 2011
    Location
    Hungary
    Posts
    217

    Re: SAPP

    Quote Originally Posted by POQbum View Post
    I am getting an issue I can't seem to resolve.
    When I start up the server I get an error
    "ERROR: sapp init not found!"
    I have the events.txt in the right place, what's the issue?
    You have to put there an init.txt also, which contains the sapp commands, which were in the halo's init.txt after the 'load'. Now you only have to put the load command to that init.txt, and other sapp commands to the "gametypesfolder\sapp\init.txt" file, so if you unload-load sapp then it will read those commands, so you don't have to re-type them again.

  4. #114
    suum cuique sehe's Avatar
    Join Date
    Aug 2011
    Location
    Hungary
    Posts
    217

    Re: SAPP

    Damn, I'm stuck. There is some bug in calling "execute command" command (like sv_map_reset, sv_map_next, etc.) from sapp... Both this 2 calling method have the same fault:
    //1st, orig;
    ExecuteCommandRaw = ( int(__cdecl*)(const char*) ) 0x0047EA30;
    int ( __cdecl *ExecuteCommandRaw)(const char *cmd);
    int result = ExecuteCommandRaw(command.c_str());

    //2nd
    long addr = 0x004B3990; // the highest call, in the end this call 0x0047EA30
    char* cmd = (char*)command.c_str();
    __asm
    {
    pushad
    pushfd
    mov edi, cmd
    call addr
    popfd
    popad
    }

    both can successfully execute commands EXCEPT the "sv_map map mode" command. Well also this too, but then SOMETIMES Halo gets Access Violation error and crash. Sometimes for the first execute, sometimes just for the idk 5th.. Any ideas y dis happens?
    Last edited by sehe; September 28th, 2011 at 04:30 PM.

  5. #115
    Kid in the Hall Kornman00's Avatar
    Join Date
    Sep 2006
    Location
    ◕‿◕, ┌( ಠ_ಠ)┘
    Posts
    3,130

    Re: SAPP

    Here's a crazy thought, try copying the script string to a local (ie, stack) buffer and passing that to the engine's console_process_command

  6. #116
    suum cuique sehe's Avatar
    Join Date
    Aug 2011
    Location
    Hungary
    Posts
    217

    Re: SAPP

    Yh, i tried that too xD Copied the cmd string to the console buffer as if you wrote it here, and then called console_process but still has the same bug :/ Strange isn't it? o_O

  7. #117

    Re: SAPP

    Look at how the server calls console_process_command. Look at what data the server passes to the function, through both the stack and registers. I talked to you on xfire and assumed you were using a different function, so what I told you was wrong.

    Code:
    004B3AC0  |> \57            PUSH EDI
    004B3AC1  |.  C605 4D3B6100>MOV BYTE PTR DS:[613B4D],1
    004B3AC8  |.  E8 63AFFCFF   CALL halocede.0047EA30
    004B3ACD  |.  83C4 04       ADD ESP,4
    You need to push the command to execute, registers aren't used. Don't forget to check for whose responsibility it is to offset the stack, in this case it's the caller's (your) responsibility so the add esp, 4 instruction is important.

  8. #118
    Senior Member Patrickssj6's Avatar
    Join Date
    Oct 2006
    Location
    'schland
    Posts
    3,838

    Re: SAPP

    Quote Originally Posted by sehe View Post
    Great... The Sapp and Unify are incompatible cuz they are using the same location in the exe ... WHY?

    OMFG!
    Took me kinda 2h but I patched together the 2 exes, and it looks like it finally works!!!
    I made a SAPP version for Unify some time ago but dropped it because it had some problems. You just have to fill the blank space between the cave and Halo's code because SAPP searched for an empty space in between.

    Good work so far! Can't help much because I moved and don't have www.

  9. #119
    Kid in the Hall Kornman00's Avatar
    Join Date
    Sep 2006
    Location
    ◕‿◕, ┌( ಠ_ಠ)┘
    Posts
    3,130

    Re: SAPP

    The engine was compiled with __cdecl as the default calling convention, so it will always be up to the caller to clean up the stack after calling an engine-based function.

    Also, console_process_command doesn't take the input buffer as a stack argument, he's doing it correctly with edi. There's only one stack argument for the function, the access flags, and 0 is perfectly fine for the most part.

  10. #120

    Re: SAPP

    I used the first address he posted and just called it console_process_command because that sounds like a decent enough name. I originally thought he was using the lower level function but checked the address he posted and it's the higher level function that uses registers.

    edit: lol, saw he posted two function addresses.... my bad

    edit2: you said it only happens sometimes and your call looks right, so something else is probably corrupting something in halo's memory and this is just the symptom of the issue. Try removing your hooks and see if the crash still occurs, if not add them again a few at a time.
    Last edited by urbanyoung; September 29th, 2011 at 04:02 AM.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •