Welcome to Open Carnage

A resource for Halo 1 modding and tech, with unique means of rewarding individual content creation and support. Have a wander to see why we're worth the time! EST. 2012


  • Content count

  • Joined

  • Last visited

About Kavawuvi

  • Birthday April 10

Extra Information

  • Gender
  • Contributed
    $100 (US) to Open Carnage
  • Raffle Victor

Computer Details

  • Name
    Dark Citadel
  • Central Processor
    AMD Ryzen 5 2600
  • Motherboard
  • Graphics
    MSI GeForce GTX 1070 Gaming 8G
  • Memory
    32 GB [2x 16 GB] G.Skill Ripjaws V Series
  • Storage
    500 GB Samsung 970 EVO
  • Power Supply
    EVGA SuperNOVA 650 G3
  • Case
    Fractal Design Node 804
  • Display
    Acer G257HU smidpx 25" 2560x1440 60 Hz
  • Keyboard
    MAX Keyboard Nighthawk X9
  • Mouse
    Logitech M510 Wireless Mouse
  • Operating System
    Arch Linux

Recent Profile Visitors

67,493 profile views
  1. This isn't an update, but I figured it might be useful to discuss version 1.0 if it gets to be that. When I release Invader, you will have two options for obtaining builds: binary and source builds. Binary builds: I will be releasing 64-bit Windows and Linux builds, and they can be run as-is on most 64-bit x86 systems. NOTE: 32-bit is NOT supported. Source builds: You will need CMake and a C++ compiler that can support the C++17 standard. This is a better option for compatibility, and you might be able to get slightly more performance depending on compiler or the flags you use. You will be able to obtain binary builds directly from here, and source code releases will be obtainable from the GitHub Releases page. I expect that most people will choose binary builds.
  2. Here's an even smaller update: All instances of #pragma once were removed. Basically, I took a Python script and replaced all #pragma once instances into #ifndef/#define/#endif include guards. Here is an example header file, crc32.h (src/crc/crc32.h): #ifndef INVADER__CRC__CRC32_H #define INVADER__CRC__CRC32_H #include <stdint.h> #include <stdlib.h> uint32_t crc32(uint32_t crc, const void *buf, size_t size); #endif The reason for this is because #pragma once is not standards compliant despite being very widely supported, and I have found that some compilers handle it slightly differently from others. The new include guards, however, have well-defined behavior. I've removed a bunch of .hpp #includes from compiled_tags.cpp (src/tag/compiled_tag.cpp), instead opting for external linkage using a macro that uses an extern void function. For most functions for compiling individual tag classes, you'll only have to add these three lines of code into a switch block rather than also having to add an #include for every single compile function. For example: case TagClassInt::TAG_CLASS_BITMAP: // tag class int COMPILE_EXTERN_TAG_FN(compile_bitmap_tag); // replace compiled_bitmap_tag with the function name break; Just make sure your function is in the Invader::HEK namespace and uses the same function signature. For most tags, this will be the case. This does not affect any sort of functionality of Invader. Rather, it's just for maintainability. Therefore, no builds will be released today. You can get the latest build from my previous post.
  3. Here is a small update: shader_transparent_generic tags are implemented. These tags do not work in the stock game and only properly work on the Xbox version of the game. However, Invader does build these tags now. You can now use scenario tags with uppercase names. However, the map will be automatically lowercased. Numeric counter limits are now unsigned. Want this? Download it here: invader-win32-20190620T204001Z.7z
  4. If it turns out they can't get an uncapped frame rate working with Halo Combat Evolved Anniversary, then I will make additional memes that make fun of them. Anyway, here's stuff that has more-or-less been deconfirmed: Community-owned dedicated servers (explicitly deconfirmed) Modding (implicitly deconfirmed if anticheat is forced) Connecting via direct IP (implicitly deconfirmed since you have to use the server browser or Xbox Live) And here's stuff that is probably not going to be in the game but hasn't been explicitly or implicitly deconfirmed: Split screen (I know they said it's "on the table" but that's most likely PR talk for "That sounds cool but no") Unlocked frame rates on all games Custom singleplayer maps in Halo CE: Anniversary (custom multiplayer maps have been heavily rumored, but even that is iffy) Original HUD or sounds in Halo CE: Anniversary (they have refused to do it on Xbox One, so they probably won't do it on PC) Various Custom Edition fixes being in Halo CE: Anniversary (enjoy your moon-sized sun at 4K or your 30 FPS particles)
  5. Here's another update! First off, I've Jason Jonesed singleplayer maps. It is possible that there may be more values that will need to be modified, but probably not. Here are the changes that tool.exe does that I know about: Strips cheat weapons and powerups from globals tags (I already did this a long time ago) Sets error angle values on the pistol to 0.2° - 0.4° (decreased from 0.2° - 2.0°) Sets minimum error on the pistol to 0.2° (increased from 0.0°) Sets elite energy shield damage modifier for pistol to 0.8x (decreased from 1.0x) Sets error angle values on the plasma rifle to 0.25° - 2.5° (decreased from 0.5° - 5.0°) Basically, the pistol gets significantly nerfed as it does 20% less damage to elite energy shields. The plasma rifle, on the other hand, gets buffed. Note that these values will be set regardless of what the original value was because this is to get the same output that tool.exe gives. If you do not want your pistol and plasma rifle tags to be modified, you will need to rename them. Next, I've also fixed bump map scaling with shader environment tags that were made exclusively using the Halo Editing Kit and not extracted with Refinery. Lastly, I've fixed a crashing bug for the water tags that came with the Halo Editing Kit.
  6. Here is a small update. I haven't gotten much done (I suppose I fixed an issue with invader-crc when you try to input an invalid CRC32?), but I have found that most of the remaining issues are mostly singleplayer issues or issues that primarily affect singleplayer maps and not any sort of stock multiplayer map. Here is a short list of remaining things to do before version 1.0 is released. Fix detail object collection tags Fix AI and AI encounters Fix the Pillar of Autumn cryo bay door Jason Jones singleplayer maps Generate a scenario tag reference array from scripts Fix some issues with tag indexing This list may expand and shrink as stuff is worked on or more issues are discovered. However, most multiplayer maps should work fine.
  7. I use Celsius because it makes sense, and it is what everything reports it in. 100 degrees is approximately when water boils, and it's also approximately when CPUs turn off. How convenient! Strangely, some people do Fahrenheit for temperature, and I know a few people who do. It's a little hard to communicate to them with that as temperatures like 170 F is meaningless to me, and 77 C is meaningless to them. Sure, 170 F is 42 F less than 212 F, but how much of a difference is 42 F? A big difference? A little? Just how hot is this fucker? We probably won't be alive when the United States finally switches to the Metric system, but I hope it does one day because using bullshit units to measure things gets tiring.
  8. Celsius is more-or-less an international 0-100 scale for the temperature of liquid water at one atmosphere of pressure. From what I've seen, many/most technology enthusiasts (even those who live in the United States) use Celsius for measuring PC temperatures. I've also seen a few people use Fahrenheit. Feel free to comment on why you use your choice of scale.
  9. At E3 2019 LG has revealed its latest and greatest gaming monitors that feature the world's first one millisecond IPS panel. Source
  10. Another update! This time it's a small one, but it could be very important to some people. What is new? I've added a new tool, invader-crc. This can be used to both calculate and modify the Halo-calculated CRC32 of a cache file. This mostly does the same thing the MEK does, but it is its own separate tool. Why use this? Having such a tool is very useful, as you could write a script that can take the CRC32 of a map (or a folder of maps) with this tool, deprotect and extract it using MEK, rebuild it using tool or invader-build, and then use this tool to write the CRC32 that you got before. This could be done in Python or Bash. Added to Halo Custom Edition is the CRC32 calculation that is performed on your maps. You may have noticed Halo Custom Edition, without mods, takes more time to start up, and this is because all of your maps are being CRC32'd. When joining a server, this value is compared against the server's value by using a challenge that can only be correctly answered if you have the right CRC32. This means that if you modify a map, there is a large chance that you will not be able to join servers unless you spoof the CRC32 value afterwards.
  11. It's been a couple years so I figured I'd update this. It looks like the prices of RAM have gone down a lot. They're almost where they were in 2016, so that's really nice for anyone wanting to build a PC today. From looking at RAM prices, the price per gigabyte of 8 GB and 4 GB DDR4 kits is worse than 16 GB. Here are the prices for the cheapest dual-channel 2666 MHz+ kits of different memory capacities that I could find in PCPartPicker (USD): 4 GB DDR4 (1x 4 GB) @ 2666 MHz: $20.49 ($5.122 per GB) -- Nobody sells dual channel 4 GB DDR4 DIMM kits. 8 GB DDR4 (2x 4 GB) @ 2666 MHz: $38.99 ($4.874 per GB) 16 GB DDR4 (2x 8 GB) @ 2666 MHz: $61.98 ($3.874 per GB) 32 GB DDR4 (2x 16 GB) @ 2666 MHz: $109.99 ($3.437 per GB) 64 GB DDR4 (4x 16 GB) @ 3000 MHz: $269.99 ($4.219 per GB) I chose 2666 MHz because that is the maximum supported clock speed for Intel's Coffee Lake CPUs. For AMD, the maximum supported is 2666 MHz for Ryzen 1000 and 2933 MHz for Ryzen 2000. I say "maximum supported" in terms of the written specification of the CPU where anything higher is considered an overclock (thus unsupported). For some strange reason, 64 GB kits are pretty badly priced and the cheapest I could find was 3000 MHz, not 2666 MHz. You may just be better off getting two identical 32 GB kits instead because you'll save around $50. Of course, you cannot guarantee they'll work together, but if they're the same exact model and specifications, it'll most likely work. Anyway, for building a new PC, getting 8 GB of DDR4 is not worth the savings anymore over 16 GB. You can still play recent games on 8 GB, but there is a measurable difference in performance from this and 16 GB. Considering 16 GB costs only 60% ($23) more, it is not worth it to cheap out on this component as you are getting a worse value by doing so. If you are only going to watch videos, then 8 GB should be fine, still. As for 4 GB, you shouldn't get it. Not only is it a horrible value, but you can't even get dual channel 4 GB DDR4 at least on desktop PCs, effectively cutting your memory bandwidth in half. Also, considering web browsers hog memory, you're just asking for trouble by going with 4 GB.
  12. Will I need an unlocked CPU and motherboard to overclock it?
  13. I wrote this a couple years ago. I'm probably going to update it soon, as there might be some outdated information. We may have other information located in our tutorials section.