Honestly, at the rate things are going, we should use OS's version-changer to make all of this exclusive to "1.09". A sort of "Community Revision".
Printable View
Honestly, at the rate things are going, we should use OS's version-changer to make all of this exclusive to "1.09". A sort of "Community Revision".
This sounds awesome!
-edited because I don't want to start anything.
I'm not too fond of the idea of yet ANOTHER Halo version specifically meant to break up the userbase even further.
To be honest, I would be afraid of a 1.09 version, especially without any autoupdate that would distribute it.
That being said, I am curious if there would be any way to somehow get servers to display two version numbers to Gamespy. I'm saying this because we can probably create a custom main menu which would change the version number when viewing a page, then you can click "Get List" and all 1.09 servers (tracking) would appear. Leaving that screen will revert to 1.08, and you'd get the full list, including those "1.09" servers. It would pretty much be a filter. Either that, or if there was a way to get Halo's browser to display servers from both 1.08 and 1.09.
I can volunteer a server for testing or whatever, other than that I can't really help out much.
I'm thinking we just need some way for Synapse-equipped servers to identify themselves as such and a custom menu that can display this information.
Make it so whenever sv_name is called to change the server name, it forces [SYNAPSE] as the first word.
That takes a lot of characters out of possible name lengths, unless we can filter it back out with some hacked scripting or something on a custom ui.map...
Random question, still related: what does the halo icon mean in the server list? *asks google*
e: I'm wondering if, through a ton of hacking, we can replace that value with whether the server has Synapse. Then it can be filtered, and we can replace that icon with a small version of the Synapse logo (ie, at this point, probably the Mendicant Bias red AI logo)
The little Halo means that the game currently running on the server is using a Classic gametype. Afaik the bitmap is built into map, just like every other bitmap. You would need to distribute a special ui.map to do it.
And server names can get p long, I don't see an issue. Most scrub admins like to add a million exclamation points or spaces to the name to get their server at the top of the list (who the hell sorts by name anyway?), so what's 10 characters?
I think I'll just have "[KM00WASHERE]" prepended to the server name :downs:
As I've lectured in the OS threads already, Open Sauce is not here to break compatibility or cause a reliance on specific data in a specific cache, which is what a custom ui would require. I don't want OS to become an overly complex codebase with all these crazy hacks which people have to try and understand so they don't fuck up what OS does already (causing stability problems, etc).
Not only that, but the HEK would have to be extended to support the new ui definitions and well...fuck that, I've freely supported this platform for far too long, and there are other issues which I need to work on to improve myself in other things.
EDIT: so give the ui additions a fucking break. thx.
kk
So will the global ban list be more of a player feedback system like what gmod has?
Explain (I've never played gMod). The global ban list will be open to server admin-supplied proof of foul play. Server admins and bot-cops send in their proof that a player is cheating, it get shown to the public, debated by us, and if we rule that botting or excessive TKing has occurred, the CD key hash is added to the list and the thread is moved into another forum where an appeal may take place and further discussion put into the matter.
I'd like to move off the subject of the ban list for now, as how it works isn't as important as how the rest of the system works.
I'm not sure what the gmod feedback system is like, so I can't be the judge here.
However, I can say that if everything is implemented as planned, then it will rely on feedback, and it won't.
I'm hoping for a system where players will be able to file complaints against other players. If enough complaints for a player of a specific nature are received in a given timeframe, their profile will be silently flagged for investigation. For instance, is a player receives 50 complaints for aimbotting within 2 days, and videos AND GAME IDs are provided at submission of the complaint, then they will review the evidence and decide on a course of action. If no evidence is provided, then an investigation can be conducted where we might observe them in an actual game to gather evidence.
The system will absolutely not ban anyone automatically. The most it can possibly do is flag someone for review. It is up to the moderators to decide on the action necessary.
^^ Jcap is pretty much the end-all for the ban list. "Not my problem" after all, my job is programming Cerebrum, and the banlist is purely a managerial task.
e: Seems we've hit the "oh no, I'm good, I'll get banned because of it!" group of people on HaloMaps...
e: FAQs updated.
so are you going to get a staff of people that review and track down the filed players?
We may. We still have positions open on the dev team, which reminds me...
Attention!
We are currently looking for skilled web graphics artists for the Cerebrum-Synapse project. Your only pay will be the rank of ONI SpecOps on Cerebrum and the ability to help moderate the ban-list. If hired, you will create appropriate graphics for medals, achievements and general styling of the Cerebrum site. Applications should simply be posted here, as we're not serious enough about this to have you PM us, we just need someone who can do this sort of thing relatively well. Honestly, if we cared a little bit more, we'd probably pay you. But seriously, it's a bunch of little 48x48 icons, not a big deal.
*sticky bump*
I'd like to announce that Cerebrum HQ will go live on July 5th...
... I'd like to, but instead I'm going to announce that our *prototype* Cerebrum will go live on that day. We're currently hard at work getting a smaller, less featured version of Cerebrum up and running, ready to receive stats from microSynapse. Right now, we have a rough mockup of the landing page, minus all of the features. In general, we're going for a mix of the Bungie home page and stats page, combining news with recent games. We hope that this layout will give our users the best experience when they first access a domain (which we still need to buy *cough cough*) and allow them to easily navigate to various points of interest.
Oh awesome! So we will be able to use it for the HCEL?
Woot! This should help us heaps. :) <33
Got some more stuff for you:
http://img32.imageshack.us/img32/1756/10299430.png
Just a background for the achievements/medals. Need more info to design each particular one.
I always work in large scale and then scale it down to specifications.
My deviant art - http://avpdragon.deviantart.com/
Don't have much on it, though.
I'd like to see some fun stuff with map specific stats. Pictures like the one in limited's sig.
Also I can't stop laughing at the halomaps kids hating on this.
Quote:
Modacity is taking our freedom away!
Correct me if im wrong..But there is those dragonball icons(Dont remember how many kills you need to get or what sort)(Never played halo 3 for that matter)(And dont make me)(I will play it if you pay me)
The way I was planning to do the medals and "achievements" was like this:
Every action you do will give you some sort of metal, like in Halo 2/3. If you get a double kill, you'll have something. If you beat down, you'll have something. The metals will be shown in each game, and you might have an area that displays how many of each you get (maybe).
There will also be "achievements", though. These will mainly be what are displayed on your profile. So if you get, for example, 10 double kills in a game, then you'll get an achievement for that which will be reflected on your profile. Maybe there will be one for playing like 1000 games, or something for a 3.0 k/d ratio.
So we need both. Achievements can be creative (with names :p), but medals should be much like Halo 2/3.
On the topic of medals, depending on where we calculate them, we may have make a client-side application that creates an overlay and displays medals as you get them. This depends on us pushing the medal calculation into Synapse, though, and puts pressure on km00. Still working out how to reliably send the message to the client (probably going to have a **SERVER** message sent to just the given player, then our little third-party app will read the incoming chat looking for the right message). Anyway, just a little fun thing to make the experience more Halo 3-esque.
e: Also, made some progress on the Cerebrum landing page. Sometime this week I need to break it down to parts (header, footer, push the CSS into a separate file, etc.) and get the basic game viewer done. Hoping to have "Cerebrum Lite" up by the 5th.
If you list what medals and achievements you want to include it would make it easier for people to make the icons for them.
I figured out a way to simulate a polar array in photoshop :)
http://img4.imageshack.us/img4/7636/doublekill.png
So you're just wanting recreations of these kill medals, and all the other stuff original?
Edit:
Here's another
http://img5.imageshack.us/img5/139/hammerfist.png
Also knowing what kind of stat tracking will be possible would be nice, because I'm not sure this one will be:
http://img14.imageshack.us/img14/3514/shieldsh.png
For having your shields at less than 50% for 60 seconds.
Made it last night before going to bed at around 3 am.
Or make up our own ones?
Would it be possible to have a matchmaking (webpage based?) system for teams of people, like company of heroes or the console halo games(Do they have this?).
It would be quite nifty for people seeking to play another team of people, if it was active enough and such.
I'm not sure I understand what you mean by that, but if you are talking about a web page you can view that will list who you can play, then I highly doubt you'll see anything like that.
We can't do a matchmaking system like the kind you see in Halo 2/3 without an external app written which the client would have to run, and a server-side app for all the matchmaking-specific servers. There would also have to be an extensive backend setup for this. It could, in theory, happen, but it is such a long shot away. Also, it would probably have as many people searching for a match as you do with Halo 2 Vista. It's easier to just join a half full to almost filled server.
I was thinking something along the lines of an automatch system, using the -connect argument modification to direct players, or teams to a server.
I don't know how the fuck this shit works though so don't look at me :X
Alright, guys, made some more progress on Cerebrum, probably a good time to start working on the game viewer now...
@MrBig: We don't track shield status. It would be a bit too much for the dump file to handle.
@Sel: We have plans for a sort of matchmaking system, but it's rather complicated and won't happen until late in the year.
@Ducky: Most of the medals are easily identifiable, and we don't want to take that away by replacing things like Double Kill with a completely different icon. This extends to most of the other medals as well. We will still have some of our own, though, but most of them will be from Halo 2 / Halo 3.
@Jcap: I can see why having Cerebrum do it would be "better" in that respect, but I can offer one suggestion: we can write a "medal rules" file that can be propagated to Synapse servers. All of the medals can be descrbied by various criteria, and Synapse can just intrepret the rule file as such. Say, we have three types of medals: incident medals, spree medals, and multikill medals. Beyond that we have criteria like weapons, relative directions, time frames, etc. We can then recalculate once at Cerebrum to verify that the server didn't have a different ruleset (and even if it did, we don't care, we'll use ours). I just think that giving players a live view of their medals will enrich the experience.
surely Kill from the grave is possible?
Cool, how about this for a custom one... 'First Blood' :P just as a stat medal, records the first kill of the game. Then AvpDragon could make a cool custom medal :P
km00 is currently discussing the details of what he'll have ready for the HCEL tournament: "microSynapse" (my name) will be part of Yelo and just dump postgame stats. It will need to run client-side, so a ref will probably need to run it.
@Malloy: incident.type = kill; incident.countByType = 1;
now which servers do you think are most likely to run this?
anyways bacon i support this service as it will not only keep servers clean, but it will rekindle my liking for CE as it has been slowly dying as of late
Updated Todo List as of 6/29/2009
Listed in order of importance
- "Lite" Synapse dump for HCEL tournament
___ km00 says he'll have it in Yelo in time.
- Cerebrum Lite game viewer
___ Should have this done sometime this week.
- Synapse in OS-Dedi
___ While high on the list of importance, it's not going to be done until August.
- The rest of Cerebrum
- Medal icons
- Medal Rules interpreter for Cerebrum
- Account linking on Modacity
___ We need the complete hashing algorithm for CD keys, and we need to be able to do it in Javascript. < !!! If you can figure this out, HELP
- Medal Rules interpreter for Synapse
___ This is pretty much my job...
- Medal Client
___ All me here, just some simple DirectX overlays and chat hooks. e: And there's a wonderful little sample app floating around. e: And yet I still have absolutely no idea what I'm doing (the sample app didn't work) HALP!
Yeh and saying that, what about 'Finisher!' person who like ends the game with the last kill for the team :P
Edit: Ive forgotten what you can track for this stat collecting but can you track, say how many kills you got with a weapon equipped and if so, sniper rifle x 2 kills, one shot = 'Two birds' Medal ?
I go on holiday for a week and miss all the fun!
So, can I help out? :)
By the way, hashing algorithm is on GBX somewhere, I'd find it but I'm banned...I might be able to find it elsewhere though.
I'm pretty sure it's a reversed MD5 hash of your Digital Product ID, or it's an MD5 hash of your Digital PID reversed. I forget which...
Yeah... I have no idea what I'm doing with this overlay... Back to Cerebrum with me... Figure I'll get the lite game viewer finished...
Alright, well here are all of the copies of the kill medals:
http://img38.imageshack.us/gal.php?g=triple.png
If you do an overlay, depending on how you do the DX hook, you'll break xfire and\or require Yelo to not be used. It can be done via Yelo of course, bitter and I used to load a custom semi-transparent image for when we did 3rd person recticles early in Yelo.
Can't it be done similar to the way Steam does their overlay? Theirs works fine with OS, unlike Xfire.
IDK how Steam does their overlay
This one be huge:
http://img194.imageshack.us/img194/1152/splatter.png
My favorite medal from Halo.
What others should I trace before moving on to original stuff?
Flag cap mb or the ninja one?
Since Halo 1 has the flamethrower, stick an 'incinerator' medal, also what about a 'spawnkill' medal which can be either appreciated or frowned upon :P
basically clock it so if a player is killed within 4 seconds after spawn the killer gets a medal.
When the game loads, it calls a hash to be calculated twice. Here's the deal:
The format of the "CD key hash" is 32 characters, so it MUST ONLY be an MD5.
However, Kornman says that on load, it is SHA-ing part of the DigitalProductID key from the registry.
So.............
on the subject of medals, may i suggest a medal that shows how big of a pistol noob a person is? sorta like a sniper/sword spree, if they get 5 PISTOL kills in a row, i feel that this medal is warranted because 9 times out of 10 i get killed by the compact sniper
@Jcap When the game loads, do you mean when connecting to a server or when Halo itself loads up?
I'm pretty sure that the hash is calculated at game load, then passed off to a server when you join (in addition to Gamespy's special hash for piracy protection).
It makes sense. The digitalproductid is pulled immediately right before the loading screen hits - right after Halo warns you that your graphics card isn't supported with the dialogue, or the Halo safe-mode dialogue. If you have a pirated version, I think it will tell you that your key is invalid right after those, and before Halo actually loads.
Well yeah here is where it opens the registry key for the PID.
Here is the code for the Digital Product IDCode:004AB970 /$ A0 00436B00 MOV AL,BYTE PTR DS:[6B4300]
004AB975 |. 83EC 08 SUB ESP,8
004AB978 |. 84C0 TEST AL,AL
004AB97A |. 75 5E JNZ SHORT haloce.004AB9DA
004AB97C |. 8D0424 LEA EAX,DWORD PTR SS:[ESP]
004AB97F |. 50 PUSH EAX ; /pHandle
004AB980 |. 68 19000200 PUSH 20019 ; |Access = KEY_READ
004AB985 |. 6A 00 PUSH 0 ; |Reserved = 0
004AB987 |. 68 B4A36000 PUSH haloce.0060A3B4 ; |Subkey = "Software\Microsoft\Microsoft Games\Halo CE"
004AB98C |. 68 02000080 PUSH 80000002 ; |hKey = HKEY_LOCAL_MACHINE
004AB991 |. C74424 18 2000>MOV DWORD PTR SS:[ESP+18],20 ; |
004AB999 |. C605 00436B00 >MOV BYTE PTR DS:[6B4300],1 ; |
004AB9A0 |. FF15 34F05D00 CALL DWORD PTR DS:[<&ADVAPI32.RegOpenKey>; \RegOpenKeyExA
004AB9A6 |. 85C0 TEST EAX,EAX
004AB9A8 |. 75 30 JNZ SHORT haloce.004AB9DA
004AB9AA |. 8B1424 MOV EDX,DWORD PTR SS:[ESP]
004AB9AD |. 8D4C24 04 LEA ECX,DWORD PTR SS:[ESP+4]
004AB9B1 |. 51 PUSH ECX ; /pBufSize
004AB9B2 |. 68 04436B00 PUSH haloce.006B4304 ; |Buffer = haloce.006B4304
004AB9B7 |. 50 PUSH EAX ; |pValueType
004AB9B8 |. 50 PUSH EAX ; |Reserved
004AB9B9 |. 68 B0A36000 PUSH haloce.0060A3B0 ; |ValueName = "PID"
004AB9BE |. 52 PUSH EDX ; |hKey
004AB9BF |. FF15 28F05D00 CALL DWORD PTR DS:[<&ADVAPI32.RegQueryVa>; \RegQueryValueExA
004AB9C5 |. 85C0 TEST EAX,EAX
004AB9C7 |. 74 07 JE SHORT haloce.004AB9D0
004AB9C9 |. C605 04436B00 >MOV BYTE PTR DS:[6B4304],0
004AB9D0 |> 8B0424 MOV EAX,DWORD PTR SS:[ESP]
004AB9D3 |. 50 PUSH EAX ; /hKey
004AB9D4 |. FF15 38F05D00 CALL DWORD PTR DS:[<&ADVAPI32.RegCloseKe>; \RegCloseKey
004AB9DA |> B8 04436B00 MOV EAX,haloce.006B4304
004AB9DF |. 83C4 08 ADD ESP,8
004AB9E2 \. C3 RETN
I'll look into what it does with it :)Code:005830D0 /$ 81EC C8000000 SUB ESP,0C8
005830D6 |. 53 PUSH EBX
005830D7 |. 8D4424 04 LEA EAX,DWORD PTR SS:[ESP+4]
005830DB |. 50 PUSH EAX ; /pHandle
005830DC |. 33DB XOR EBX,EBX ; |
005830DE |. 68 19000200 PUSH 20019 ; |Access = KEY_READ
005830E3 |. 53 PUSH EBX ; |Reserved => 0
005830E4 |. 68 B4A36000 PUSH haloce.0060A3B4 ; |Subkey = "Software\Microsoft\Microsoft Games\Halo CE"
005830E9 |. 68 02000080 PUSH 80000002 ; |hKey = HKEY_LOCAL_MACHINE
005830EE |. 881D E0DD6B00 MOV BYTE PTR DS:[6BDDE0],BL ; |
005830F4 |. C74424 24 0004>MOV DWORD PTR SS:[ESP+24],400 ; |
005830FC |. 895C24 1C MOV DWORD PTR SS:[ESP+1C],EBX ; |
00583100 |. 895C24 20 MOV DWORD PTR SS:[ESP+20],EBX ; |
00583104 |. FF15 34F05D00 CALL DWORD PTR DS:[<&ADVAPI32.RegOpenKey>; \RegOpenKeyExA
0058310A |. 85C0 TEST EAX,EAX
0058310C |. 75 2B JNZ SHORT haloce.00583139
0058310E |. 8B4424 04 MOV EAX,DWORD PTR SS:[ESP+4]
00583112 |. 8D4C24 10 LEA ECX,DWORD PTR SS:[ESP+10]
00583116 |. 51 PUSH ECX ; /pBufSize
00583117 |. 8D5424 2C LEA EDX,DWORD PTR SS:[ESP+2C] ; |
0058311B |. 52 PUSH EDX ; |Buffer
0058311C |. 53 PUSH EBX ; |pValueType => NULL
0058311D |. 53 PUSH EBX ; |Reserved => NULL
0058311E |. 68 B4216100 PUSH haloce.006121B4 ; |ValueName = "DigitalProductID"
00583123 |. 50 PUSH EAX ; |hKey
00583124 |. FF15 28F05D00 CALL DWORD PTR DS:[<&ADVAPI32.RegQueryVa>; \RegQueryValueExA
0058312A |. 85C0 TEST EAX,EAX
0058312C |. 74 18 JE SHORT haloce.00583146
0058312E |. 8B4C24 04 MOV ECX,DWORD PTR SS:[ESP+4]
00583132 |. 51 PUSH ECX ; /hKey
00583133 |. FF15 38F05D00 CALL DWORD PTR DS:[<&ADVAPI32.RegCloseKe>; \RegCloseKey
00583139 |> B8 5C365F00 MOV EAX,haloce.005F365C
0058313E |. 5B POP EBX
0058313F |. 81C4 C8000000 ADD ESP,0C8
00583145 |. C3 RETN
00583146 |> 8B5424 04 MOV EDX,DWORD PTR SS:[ESP+4]
0058314A |. 52 PUSH EDX ; /hKey
And I was just going to suggest we use my trusted-server key authentication method...
Well yeah that would be easier.
One interesting thing, is after it reads the Digital Product ID, it loads the PID into EDI
Later, it uses Crypt API calls.Code:MOV EDI,DWORD PTR SS:[ESP+4C]
Oooh
Hmm tastyCode:00582FA1 |. FF15 10F05D00 CALL DWORD PTR DS:[<&ADVAPI32.CryptCreat>; ADVAPI32.CryptCreateHash
But the server method makes so much more of a mess and takes more effort. Also, it doesn't give us the same security we'd have with the key.
Also, wtf happened to your screen name?
(still @limited): Whereas my method would involve having one of our own servers wait for someone to join with a certain name and enter a short (random) code.
Either way, we're looking to link a Modacity account (and therefore a Cerebrum account) with a CD key in a way that can't be spoofed, yes. The idea with jcap's method is that we display the hash to the user, but the key should still be the thing that is sent - or at least, that's what I hope, as I can easily change the contents of a disabled text field...
Yeah, I want to show the hash to the user to give people the peace of mind that we're actually using what it generates, not the actual key. You're right, we might need to send the actual key and then calculate it on the server anyway because it's too easy to edit the field or edit the HTTP data. I did think of that, but I only mentioned it to Kornman and ShadowSpartan, I think. We'll just need to make it clear in the Terms of Service that the key is used solely for generating the hash - nothing else - and that the key is purged immediately after the hash is created.
Either way, we would still need to know how the hash is generated, whether it's done by javascript or PHP.
@kornman00: This is the format I'd like to have the Yelo dump come in. If you need to remove anything or feel that you can add anything, let me know, as this is what I'm building my 'lite' game viewer off of. The reason for keeping various parts is that I want the format to be as close to the final as possible (hence "overallMetrics" being alone in the <players> block)
http://img34.imageshack.us/img34/4089/flamer.png
I've already got all of the Halo 3 weapons vectored, so it will be easy to make weapon specific medals.
Now is the when you should start saying "hey, that actually is starting to look like a game viewer". Style and formatting time!
OMGz how do I link my CD key NOAW!!!
Looking awesome as usual.
I can't wait to see what this turns into its looking great. The stat's reminded me of Halo 2/3's post game carnage.
Also has it been covered how our CD Key's will be safe from yo ho hoers and their bottles of rum?
The CD key hash on a server is non-reversible. No worries, them h4xers can't get ur key.
@ higuy: That's the point; glad to hear we're on the right track.
In case you missed it on the last page...
Oh my.
Can it track team changes in the middle of a game?
Not the lite version, but we'll have the required information in the final version. (See: players->lifeMetrics->team)
http://img3.imageshack.us/img3/1055/ar100.png
http://img193.imageshack.us/img193/7483/shotgun500.png
http://img7.imageshack.us/img7/11/rocket1000.png
http://img193.imageshack.us/img193/6...rower10000.png
How do you like this set up for the weapon medals?
We'd use them as achievements; I like them.
Holy shit, 10,000 flamethrower kills? Noone is ever going to get that.
Very interesting.
Now how about the covenant medals be purple ;)
I think the numbers were used for examples more than anything. I actually like them. Pretty nice.
Ya, I was think four achievements for each weapon.
The numbers I just put there, you guys can tell me the amounts you want.
I'll continue working on these tomorrow, and try out the purple to see if that looks good for cov weapons.
Busy playing UT3 tonight :)
What might be nice is different color achievements with different symbols or something on them for different "milestones." So, for the first 1000 kills with an assault rifle, you have a blue medal. For 5000 kills, you get a...dark blue medal. Then like 10000 would be gold, and 50,000 white/platinum.
Maybe the same colors as the multi kill medals, but obviously with a different amount of kills.
Alright, so you want something more along the lines of this? The covenant weapons only purple for the first level.
http://img4.imageshack.us/img4/122/ar1000.pnghttp://img3.imageshack.us/img3/9490/needler1000.png
http://img38.imageshack.us/img38/9633/ar5000.png
http://img7.imageshack.us/img7/4153/ar10000.png
http://img15.imageshack.us/img15/5741/ar100000.png
Awesome medals man =D!
Hah, that's sick! But it will take a fuck long time to get that last one! BUT I'LL DO IT! :D
Hopefully Halo CE wont die by then, lol.
I was thinking 100, 500, 1000, 5000, 10000. Let the first two be easy, then the rest will be a bit more difficult. Everyone should, after playing for a few months, be able to get the 10k on the AR and pistol, but not the other weapons.
Ok, I've changed them to 100, 500, 1000, and 10000.
I have the AR, magnum, sniper, flamethrower, shotgun, rocket, plasma rifle, plasma pistol, needler, a ? for custom weapons, and a hand for the beat down. I don't have the fuel rod gun, so I need a reference pic of that. Tell me if I forgot anything.
http://img5.imageshack.us/img5/8895/beatdown.png
grenades/stickies ;)