sparky has contributed to 1907 posts out of 465239 total posts
(.41%) in 3,129 days (.61 posts per day).
20 Most recent posts:
I'm leaving the community. I wish you well.
Your .sound tag needs mouth data. Mouth data is a sequence of bytes where 0x00 indicates complete silence and a fully closed jaw and 0xFF indicates maximum amplitude and a fully open jaw. The sampling is 30 bytes per second of audio, to correspond with the animation rate of 30 frames per second. Alter the sound tag to add mouth data by setting its usage to dialogue and running the audio file through tool again.
You should wait until it's done. Then you can rename everything as a project contributor or with your own project or fork of it.
It won't matter to anyone but me, and I don't care that much since almost all the variables are already named by me. To the person who uses the function(s) for handling data, verbosity in variable names is helpful to identifying what is stored. I prefix everything since everything is loaded globally instead of contained within classes and objects.
Edited by sparky on Nov 4, 2017 at 01:48 PM
If you want to discuss your options in chat, contact me on Discord.
Edited by sparky on Nov 4, 2017 at 01:43 PM
I'm making a C library that parses Halo files.
I'm working on the tag file formats first, then map files, then probably back to other kinds of data. The approach I am using is similar to NSData in Objective-C. I use fopen() to open a file, copy its bytes into memory and make a note of the file data length, close the file, copy the memorized bytes into parsing structs, and free the memorized bytes.
Eventually, this will facilitate designing any C-based application to read and write Halo file data.
Edited by sparky on Nov 3, 2017 at 01:09 AM
Yeah it's an optional behavior, it's merely to make it more interesting. It's a mode like Halo RPG.
Edited by sparky on Nov 3, 2017 at 12:57 AM
I have a mirror of the hce.halomaps.org archive. It is currently at https://halo.galaxyverge.com/files/archives/. There are other archives there also, in other directories.
4636 archives have .map files, 1907 archives have no map files. 14 archives that have map files have difficult UTF8 characters in the file names.
Of 6557 .zip archives (146.9 GB), there are 4670 map files.
The 4670 map files are 295.9 GB expanded.
So if you want to install all the .map files from hce.halomaps.org, you will need about 300 GB of available disk space. Furthermore, you will need to rename many of the ui.map and single player map files, and other versions of map files, and then rename the internal map name strings of those map files. I extracted all the .map files (not .yelo files) and will provide a single .zip file archive containing all the maps after I have renamed the files that need to be renamed.
Here is the output of SAPP's maplist command after it loads all the multiplayer maps for Halo Custom Edition:
That's after renaming duplicate map file names, but not internal map name strings.
Edited by sparky on Oct 31, 2017 at 10:02 PM
Edited by sparky on Oct 31, 2017 at 10:07 PM
You want to do this without modifying the map file.
Add an area name for each health pack you want. Go in the map and walk to where you want to place a teleporter entrance, then get your ID using
Then, if your ID were 1, type this command in the console:
This will give you an X, Y, and Z of your location.
Add a spherical area at that location:
area_add_sphere <name of location> <x> <y> <z> <radius>
Raise the Z by 1.4 so it's off the ground and set the radius to 0.3. If that doesn't work, test some other values.
While you're standing there, do:
loc_add <name of location>
Which will add the location of player ID 1 to the locations.txt file.
Add specific locations for exits, using loc_add after reaching the exit location in-game.
Now you have the location and the general area recorded. Use the location to spawn a health pack at that spot every 30 seconds or so. Use the area to trigger when a player is nearby. Raise the Z coordinate or lower the radius of the area if you need to make it more precise for jumping.
If you use SAPP to spawn a health pack eqip, it will vanish soon. You would want to execute this SAPP command about every 30 seconds using a timer() function in a SAPP Lua script:
spawn eqip "powerups\health pack" <location name> <rotation>
In the same script, or in events.txt, add something for event_aenter:
event_aenter $area:<area name> 't $n <location name>'
That way, when you enter the spherical area, you will be teleported to the named location.
I had to boost to reach the secret location. Even using vehicles, it is difficult.
The command "/boost" is active in case you want to use it to find the secret location.
Edited by sparky on Oct 31, 2017 at 02:13 PM
Map Download Mirror: https://haloserver.com/hemoasis.zip
Edited by sparky on Oct 31, 2017 at 02:23 PM
If you want to come back, you know where to find us.
It would be easier, but the idea is to make it so it has minimal interference with gameplay. You should still be able to use all game controls while the screens are showing. Any ideas? If I do add this behavior, it would be toggled with another command.
I plan to finish .scores (shows scoreboard information) and .stats (shows your statistics, such as distance traveled and damage dealt and damage taken and head, torso and leg shot counts) and a new idea someone provided: kits.
Kits will of course require the default weapon tags to be present in a map, and will offer loadouts for players to choose. I might add a currency system like some Halo CE servers have, where you earn money based upon your stats and can buy weapons and ammo and kits.
- Earn $0.05 for every leg shot, $0.07 for every torso shot, and $0.10 for every head shot.
- Earn $1 for every kill.
- Health pack costs $10.
- Overshield costs $25.
- Camo costs $40.
- Rifle Kit (assault rifle and plasma rifle) costs $20.
- Sniper Kit (sniper rifle and pistol) costs $50.
- Explosives Kit (rocket launcher and plasma cannon) costs $100.
- Demolitions Kit (4 frag grenades and 4 plasma grenades) costs $10
- Specialist Kit (needler and flamethrower) costs $150
Ammo for each kit will cost half the price of the kit, and will provide 2 magazines for ammo-based weapons and full battery for battery-based weapons.
The idea for this would be that everyone starts with a basic loadout of a plasma pistol and shotgun and there are no weapons or power-ups in the environment.
Edited by sparky on Oct 30, 2017 at 07:21 PM
Generating mouth data is easy. Mouth data is simply a 30-per-second sampling of the amplitude of the sound samples... I actually did this in the past, I think, with an old Mac OS X 10.6 experimental build of Zeus.
As I said earlier, a value of 0xFF in the mouth data means maximum amplitude in the sound and the mouth at its widest open animation position. 0x00 indicates silence and the mouth fully closed.
Edited by sparky on Oct 30, 2017 at 05:23 AM
Halo Screen Commands is a SAPP Lua script I have been working on for the past few days. More features coming soon. For a copy of the most recent beta test version of the script, join my Discord server.
Sounds like a great idea for a script I already had the same idea for and developed. Eh. So yes, it's a future feature of something cool in the works. Just think, <in-game magic>.
I like the theme of revamps on old themes.
But why is there a giant phallus in the middle of your map?
A simple program can generate mouth data for your tag. It's merely the amplitude of 30 samples per second of the sound, where 0x00 is silence and 0xFF is full loudness.
That is shining evidence that you can say all you want to someone who does not care what you say and they will still not care what you say. You could tell someone that their house is on fire and they would rather burn to death than take your word for it. Why are these people elected? Nepotism. Despotism. Ignorance and arrogance thrive in politics. That's why smart people stay away and watch the rioting from a distance. If senators/legislators and the entire government system do not listen to words, they will not listen to rioting either. All they do is match words with words and force with more force. Their minds are set and honestly, they won't listen to anything --- except for their bank accounts being wiped out and their salaries being terminated. But look, they make the laws about their own salaries and vote themselves raises among their buddy senators, all at our tax paying expense. Hey, if they can get away with taking our money and giving us the finger, what makes anyone think rallying or petitioning will result in a response other than rolling eyes, swatting hand gestures, and chuckles?
Do you honestly think that these self-serving fools care at all about you or your family or this country and its legacy? Look at all the stupid wars the executive branch has started in other countries. Anyone who cared about the legacy of a nation would never do what the United States government has done. These people are beyond stupid -- they are evil and criminal and arrogant and entitled and feel that they can get away with murder. They do get away with murder all the time. Do you think that this kind of government is going to actually respond to anything other than financial impact on their own wallets?
US Congress is a tournament of buffoons. Watch the comic and tragic display on a government news station some time. It's no better in other countries. It's all feeble and shallow words excusing evil actions and corruption to we the "unsuspecting" people. That's how they paint us, but the truth of the matter is that we do nothing because we know that nothing can be done except through their deaths, but murdering a corrupt government is not what a nation's people should do. It's a no-win situation, because good actions cannot be forced upon an evil government. You cannot make a weed produce delicious oranges, regardless of how much to you talk to it or encourage it or threaten to uproot it if it doesn't comply with your demands.
Edited by sparky on Oct 22, 2017 at 10:11 PM
This might help slightly: https://www.youtube.com/watch?v=CJF6E9YXXVE&list=PLOLhzsHlG3Qr8R5AgI67kKB9HisblIkZS&index=28