Devieth

Member
  • Content count

    173
  • Joined

  • Last visited

  • Raffle Tickets

    0

About Devieth

  • Birthday 04/12/95

Extra Information

  • Gender
    Male
  • Location
    Wisconsin, USA
  • Contributed
    $25 (US) to Open Carnage
  • Raffle Victor
    Two-time

Contact Methods

  • Steam
    Devieth
  • Gamertag
    Deviethan
  • PSN
    Devieth

Computer Details

  • Central Processor
    Intel i7 8700K @ 4.8Ghz
  • Motherboard
    Asus ROG Z370-H
  • Graphics
    Gigabyte Nvidia GTX 1080 Ti
  • Memory
    16GB DDR4 @ 2400Mhz
  • Storage
    256GB 850 Evo, 520GB Crusial SSD, & 1TB 7200RPM WD Blue
  • Power Supply
    Rosewill Photon 850
  • Case
    NZXT H440 - Red
  • Display
    AOC G2770PQU - 1920x1080 @ 144hz
  • Keyboard
    Rosewill RGB80
  • Mouse
    Razer Deathadder Elite
  • Operating System
    Windows 10 Pro

Recent Profile Visitors

7709 profile views
  1. Been a long time since I looked at anything halo, but if I remember correct you can use write_bit(vehicle + 0x10, 5, 0) to re-enable the physics to a vehicle, causing it to reset without having to give it velocity (its been a long time so maybe I am wrong?) I do know if you write this every tick vehicles spawning on slops will gradually slide (and if you get int he way, it will trigger a death by vehicle), stationary vehicles will just momentary reset. This can also be used as a method to stop frozen vehicles when running servers/maps that require a tickrate of 60 by writing this at a specified interval and or when a player or explosion are in the specified radius of the vehicle. Sadly more maps that could have used this trick were never made. Never thought to use this in the script that I wrote for ASH though since normally at the time of moving the vehicle the vehicle is in motion and has physics, and when moving the vehicle I had to reset its rotation and velocity (again if i remember correct.) Cool stuff.
  2. This is because it cause the game to ignore the extra updates from SAPP, including desyncing updates from server caused by server owners setting custom_sleep below 8. Locking frame-rate just forces the client to only accept updates at the normal rate of 33ms.
  3. SAPP's is about as good as it gets, its not 100% prefect. I have written a script for it that doesn't have some the bugs SAPP's system does but its also overly sensitive. Try it at your own risk, its in an unfinished state and some of commenting is wrong, I would recommend leaving it at its default settings and only let it kick players. https://pastebin.com/8UnVDP83
  4. Releasing the server source, I cannot continue to work on this at the time. Server: halopc.lua This requires Luvit: https://luvit.io/install.html To run the script place halopc.lua, crc32.lua, and lua_table.lua in the folder you place the luvit executables in. After that open a CMD window in that directory and run it with `luvit halopc.lua`. If you want to send request to this you will have to open up port 80 (or you can change the listen port in the script and open that port instead.) Also make sure coro-http is installed by running: `lit install coro-http` (again in a CMD window with the folder path you have luvit installed.) Edit: coro-http is required but not used, i forgot to remove this from the script, you can comment out line 2 and not install coro-http and it should work fine. Note: This cannot run on linux, it is running windows commands to get the working directory which do not work. Even if you manually set this, the linux version of luvit tends to halt for no reason after a couple hours (at least on Ubuntu.)
  5. I can set up ssl but it would take some work. Not on the plans until things are finished. Also idk what EGS does, not of fan of them for multiple reasons. Feel free to register your server on the site and try though. If its on windows server it will try to download wget and everything, it it doesn't work well, the script will just error out.
  6. Yeah Kavawavi made an ffi module, it only has http get. I would just need one for doing post request. Using post because it is a better way of sending of the data then having it in the url of a http get request. Like I said, lag caused by it at the moment is not a huge concern but, the script for the server side is open source so someone could integrate their own Also if people set custom UUID's I don't care, and if they share a UUID with another player well that's only going to impact their individual stats. What I do care about is if servers send false match data, which is why servers have to register to be on the whitelist, and if they send fake data I can move them over to a blacklist. Right now registering is still a thing but the blacklist is disabled, as this is like alpha stage and I just want to see some data come in first. Also thinking of this made me remember I forgot to include the json library. Need to update the main post.
  7. UUIID as I said above is based on the HWID of the users C: drive, which is 100% unique between every player. The UUID pulled from the Lua script for Chimera (and is compatible with the new chimera and older versions) is based on the the Windows system UUID. Both are hashed then converted into a number on the API. The lag with powershell and wget is minimal, about a second or so as long as the API responds somehow (either with 200 OK or otherwise, also put timeouts inside of the commands of 5 seconds.) Also I have the requests go out on `EVENT_GAME_END` so no one is going to be lagging around in-game and it shouldn't drop the connection to anyone. I was looking into making a ffi module that would be a multi-use http request system (POST, GET, PUT, ect.) Anyway you could use this API to make a readable webpage so people could look up their stats. I am not great with html/js so I didn't even bother to try and write that part.
  8. The api source? No not at the moment. While I am able to host it I may keep it private. Having multiple sources running it would be kind of annoying. I will also still be adding more when I can (updating the server script or the api so you could search match history by server instead of by player.) The sapp server script, its non-compiled Lua script. The custom chimera, no. It was originally part of an defunct anti-cheat I wrote. It grabs the HWID of the C: drive.
  9. Today I am launching a very alpha version of a stats api for SAPP servers. If you run this script it will send back stats of all players (current and past) to the API server at http://api.halopc.com/stats/. Here is the script for the SAPP server: stats.lua Setting up the script: If you are on Windows server 2016 or newer, you can set `use_powershell` at the top of the script, all though this will make almost no difference. If you are on older versions of Windows do not change this setting, the script will attempt to download wget.exe to use that instead using commands that are compatible with powershell 2.0. If you are on wine you will have to download wget.exe and place it next to your haloceded.exe. Next you will need to download this: json.lua, place this lua script next to your haloceded.exe, this is required. (The server will try to download this with the current version uploaded on 6/15/2021. If it fails download it manually from here.) What data is collected: IP, hash, name, score, kills, assists, deaths, betrays, suicides, weapon stats, time played (in seconds), other gametype stats, and server details. How is a player tracked: Within the server, hash. With the API, IP or a custom UUID that be sent with a custom version of Chimera (based on -572) or with a script for Chimera. UUID is hardware based. Note: The script version will open a cmd window for a moment after launching Halo, if this is annoying I recommend using the custom version of chimera. Note2: Player IPs and Hashes are not exposed in the API. Registering your server: Severs must register their IP in order to send stats to the stats API, this can be done at http://api.halopc.com/register. Servers found sending modified player stats will be blacklisted. Polling stats: Stats can be pulled from the API in two ways, as a Lua table (http://api.halopc.com/stats/raw?lua) or as a Json string (http://api.halopc.com/stats/raw?json) If there are any issues please let me know, I can be found on the OpenCarnage discord server, feel free to @ me. Sorry if this post is kind of messy. Files in post: uuid.lua json.lua
  10. You have to allow hash duplicates, which is something that you may have to find a script to patch. Phasor has a script that does this for it as well, as the base mod only disables cdkey checking but duplicate checking. The fix is simple but I don't have the 1.10 address on hand otherwise its this added to any script in the OnScriptLoad section: write_bit(hash_duplicate_patch_address, 0, 0) `hash_duplicate_patch_address` has to be replace with the address, I am guessing someone else here may have the 1.10 address.
  11. Updated the script to version 2.0. Script should now download maps more consistently. Now automatically downloads required files for downloading and extracting. Removed options for downloading outside of hac2_repo.
  12. If you can get socket to load on SAPP you may be able to get it to load in Chimera. SAPP can put out errors without crashing.
  13. Ahh. Also think you mentioned luasocket, not sure if it would work for you, but try installing Lua modules in the executable (haloce.exe) directory using luarocks? That part of Chimera's Lua was not really set up to point to something like `chimera/lua/global/modules` unfortunately. Good chance it still wont work though. Neat project though.
  14. You could use something like this: local file = io.open( "%username%\\Documents\\My Games\\Halo CE\\chimera\\lua\\global\\health.txt", "w" ) That way it will target what ever user the current system is on all Windows systems. Not sure how to implement such a thing on Linux though, as there you are pointing to the `z:` drive? This would want to point to wine's `c:` drive.
  15. This is something that @Chalwk's project reminded me that I wanted to do when I first discovered Discordia (Lua API for Discord.) So actually a good amount of thanks to him that I even made this. Probably a lot more simple that what he's doing. Discordia is pretty awesome and I been writing bots with it for a couple months now.