View Full Version : [APP] OpenSauce Halo CE SDK Update #2 (RC)
Kornman00
May 5th, 2011, 02:42 PM
Shader effects are done via both new tags and via scripting functions which we've added. We've had some of the rasterizer script globals exposed to the game client for a while now. So some globals which you can set in Sapien can be set in-game as well. However, the shader effects are OS specific
The_Cereal_Killer
May 5th, 2011, 09:46 PM
Alright, and now just one last question, could be a bit much though (I asked this about HEK AIO as well, just a moment ago): are you planning to re-implement the recorded animation ability in Sapien, as I had talked about previously on Halomaps?
Kornman00
May 5th, 2011, 11:27 PM
No plans for it, no. Something could probably be done in-game though, since there is unit control in there, but I have no plans for it.
Cortexian
July 12th, 2011, 01:29 PM
Something has def broke the dll attached to the OP. It doesn't toggle right with F7 and some options don't work (HUD Scaling), I had to spam F7 + 3 to get it to finally appear for more than 0.1 second.
Kornman00
July 12th, 2011, 02:11 PM
2011-05-05 update:
Stop downloading these files. They're all out of date. New official builds will always be posted on the google code project's download page (http://code.google.com/p/open-sauce/downloads/list).
welp
Cortexian
July 12th, 2011, 04:11 PM
Except all that's there to download is "Yelo Neighborhood" whatever that is. I just want the Yelo d3d.dll that lets me fix my HUD.
Jelly
July 18th, 2011, 12:59 PM
Except all that's there to download is "Yelo Neighborhood" whatever that is. I just want the Yelo d3d.dll that lets me fix my HUD.
yeah whats up with this, is neighborhood the same thing as yelo?
Kornman00
July 18th, 2011, 02:04 PM
Unless you own a Xbox1, ignore it.
Cortexian
July 18th, 2011, 02:06 PM
I own an Xbox 1 modded with an Xecuter CE3.
But where's my d3d9 HUD fix? Can you compile a new one please?
Kornman00
July 19th, 2011, 11:25 AM
Can't wait for the next official release?
http://www.modacity.net/forums/images/customavatars/avatar125_69.gif (http://www.modacity.net/forums/member.php?125-Freelancer)
Learn to program, get Visual Studio, and do it your fucking self. It's open source after all.
Cortexian
July 20th, 2011, 12:58 AM
Learn to program, get Visual Studio, and do it your fucking self.
Not a solution for 99% of people, just saying. Learning to program takes years of education and experience which some people aren't willing to put in or literally can't do since they're working on other things in life.
Timo
July 20th, 2011, 02:23 AM
Not a solution for 99% of people, just saying. Learning to program takes years of education and experience which some people aren't willing to put in or literally can't do since they're working on other things in life.
http://www.threadbombing.com/data/media/70/Sloth_shades.gif
Kornman00
July 20th, 2011, 09:17 AM
Can't wait for the next official release?
http://www.modacity.net/forums/images/customavatars/avatar125_69.gif (http://www.modacity.net/forums/member.php?125-Freelancer)
http://www.threadbombing.com/data/media/70/Sloth_shades.gif
.
Patrickssj6
July 20th, 2011, 11:03 AM
http://kornnersoftware.com/images/boner.png
ohhhh it burrrrrnssssss
Jelly
July 20th, 2011, 12:20 PM
Not a solution for 99% of people, just saying. Learning to program takes years of education and experience which some people aren't willing to put in or literally can't do since they're working on other things in life.
what he's saying is wait. wait for him to do it. he's going to do it eventually. its not done yet
Masterz1337
July 23rd, 2011, 03:48 AM
Not a solution for 99% of people, just saying. Learning to program takes years of education and experience which some people aren't willing to put in or literally can't do since they're working on other things in life.
Even if you were to compile you wouldn't be using a stable build. For all you know the next RC isn't out yet because it has an F7 or worse problem. Unless you want to pay Korn to get it done faster I'd hold off complaining, he's doing this in his own spare time, and he probably doesn't have time to create a stable build just for you.
Kornman00
July 23rd, 2011, 02:13 PM
Hey Masterz, that's no way to talk about OpenSau-
oh wait, you're defending it :-3
;)
Kornman00
September 6th, 2011, 12:43 AM
I modified the engine's 1st person weapon code to correctly use random animation permutations (you can all thank Choking Victim for the inspiration and testing to make sure I didn't bork things up). The implementation doesn't require you to change anything, and you just specify the permutation modifier (%) in your animation name like you would for other animations (units, scenery, etc) that support permutations.
I'm trying to figure out where the code is that starts a device's animations so they too can have random permutations. However, they don't seem to be using the same functions as units\weapons\scenery. Gee, my work would be so much easier if I had access to the game's source :eyesroll:
I wonder if I sold my soul to Gearbox (ie, landed a job there), if they would let me work on Custom Edition in my free time? Probably not.
Patrickssj6
September 6th, 2011, 08:01 AM
Thought of random animations a while back as well. Just couldn't be bothered ;P
You specify a percentage of randomness at an animation joint and when the animation is executed the animation at that joint is randomized in any world space direction. e.g. if you melee somebody his elbow will always be in a different place. (If that's what random animation permutations are).
Choking Victim
September 6th, 2011, 09:02 AM
Thought of random animations a while back as well. Just couldn't be bothered ;P
You specify a percentage of randomness at an animation joint and when the animation is executed the animation at that joint is randomized in any world space direction. e.g. if you melee somebody his elbow will always be in a different place. (If that's what random animation permutations are).
You're thinking about something more like rockstar's RAGE engine, which uses the animation engine Euphoria. In halo, animation permutations just permute your animation state into various preset animations.
supersniper
September 8th, 2011, 12:41 PM
lol freelancer read this in a day, learned the basics and some advanced stuff as well.
didn't know a day was years and years of education.
http://www.cplusplus.com/doc/tutorial/
Cortexian
September 10th, 2011, 08:41 PM
Learning to program = / = programming properly.
Programming is like math and science. After you learn the basics and move onto more advanced stuff, you find out that the stuff you learned before was wrong, inefficient, or inaccurate.
supersniper
September 11th, 2011, 12:43 AM
uh... its not just math buddy, it's about structure and order and making sure you do what you want in the least yet most efficient way.
it only involves math up to algebra really...
and how it involves science? unless you are talking about reverse engineering, then that's completely different.
king_nothing_
September 11th, 2011, 12:54 AM
He was comparing the learning process of it to that of math and science. He wasn't talking about the math/science involved in it.
Skyline
September 11th, 2011, 01:29 AM
uh... its not just math buddy, it's about structure and order and making sure you do what you want in the least yet most efficient way.
it only involves math up to algebra really...
No not really, there's a lot of math behind algorithms to create efficient code.
http://en.wikipedia.org/wiki/Big_O_notation
p0lar_bear
September 11th, 2011, 02:16 AM
No not really, there's a lot of math behind algorithms to create efficient code.
http://en.wikipedia.org/wiki/Big_O_notation
Programming is mostly logic. Math plays a part, but they're called programming languages for a reason. Big O notation is used in computer science to basically measure the efficiency of a data structure to handle a procedure (sorting/adding/deleting); e.g. O(1) means that the procedure's efficiency is constant, O(n) means that the procedure depends on the amount of data in the structure, etc.
t3h m00kz
September 11th, 2011, 02:42 AM
I swear I have some sort of learning disorder because every time I tell myself I'm going to learn programming I go ride bikes
Patrickssj6
September 11th, 2011, 06:02 AM
Programming is a lot more than logic. You have to conform to conventions which you just learn over time.
The reason OS is written the way it is, is because partially Korn uses common naming conventions and on the other hand implements his own. Naming conventions are mostly ignored by beginners and that's why most of the code looks like crap in the beginning.
Not to mention having background knowledge allows you to write much more efficient code. You could use a 64-bit data value (e.g. int64_t) for iteration purposes, but when you optimize your app to run in x86, the iterator cannot be stored inside a single general purpose register.
Kornman00
September 11th, 2011, 06:04 AM
There's a lot of logic behind algorithms to create code, be it efficient or otherwise. Big-O isn't a part of programming, it's a part of computer science. It's theory. It uses math and math notation to describe structures and the code surrounding them. You can use other constructs for modeling data and information for use in computer systems, eg object entity relationships or plain old flow charts.
Moving on to "more advanced" stuff doesn't mean what you learned or were doing earlier was wrong, inefficient, or inaccurate. Programming (or maybe software engineering is a better term in this case) is about solving problems, be it purely logical, mathematical, or something in between. You use different tools to solve different problems. Some tools may provide a cleaner solution to a problem, where another one doesn't. Doesn't mean that other one is wrong, inefficent, or inaccurate. It just means it's not the right tool to solve that problem. You can use the wrong side of a hammer to nail something, but it's not the best tool for it. That's not what it's made for. But boy, when you need to remove a nail from something, it sure can work wonders.
Really, programming is only a piece of the computer science pie. Anyone can shit out code and then say they program. They're known as hacks, not actual computer scientists.
edit: sniped by Pat
Patrickssj6
September 11th, 2011, 09:41 AM
Programming skills are reflected in forum posts:
Korn uses a profound language, italics to highlight keywords and uses enum(erations) where can.
I on my behalf did a half arsed job of a post (http://www.modacity.net/forums/showthread.php?17758-OpenSauce-Halo-CE-SDK-Update-2-%28RC%29&p=593731&viewfull=1#post593731) without any structure at all.
This guy has obviously no clue how to program:
Yeah i just dont know the actual code :/ i suck. this is what i got
int player1 = Mem.ReadInt(0x402AAFD0);
label3.Text = player1.ToString();
how do i convert the output O.o
:iamafag:
supersniper
September 11th, 2011, 12:16 PM
so really anyone can learn how to program it just takes time freelancer.
Tnnaas
September 15th, 2011, 09:16 AM
My "c++ n00b" response:
cout << "Freelancer, stop posting!" << endl;
supersniper
September 15th, 2011, 12:41 PM
return 0;
Tnnaas
September 15th, 2011, 07:45 PM
I suppose I should have put in my compilers as well.
sanni
September 17th, 2011, 04:25 PM
I can't really grasp the concept of how far OS can go so I have some nooby questions that may be a little stupid :-3:neckbeard:
- Would it be possible to program OS in such a way that it logs all players viewports, weapons and x/y/z coordinates on the server, so that you could replay a match like you can in Halo Reach?
- I use "disablealpharendertargets" in the init.txt to get rid of the scope blur. Would OS allow to make such changes and maybe even more advanced ones on-the-fly from the ingame video options menu? Maybe a Scope Blur On/Off option? Nvidia camofix?
- I use a cheap TN panel LCD. If you increase contrast you kinda increase brightness at the same time which then hurts the eyes. Still I like to have a little bit more contrast in Halo since it looks a little washed out, especially Bloodgulch. Would it be possible for OS to make a contrast slider in the video options menu?
Kirby_422
September 17th, 2011, 06:38 PM
I can't really grasp the concept of how far OS can go so I have some nooby questions that may be a little stupid :-3:neckbeard:
- Would it be possible to program OS in such a way that it logs all players viewports, weapons and x/y/z coordinates on the server, so that you could replay a match like you can in Halo Reach?
- I use "disablealpharendertargets" in the init.txt to get rid of the scope blur. Would OS allow to make such changes and maybe even more advanced ones on-the-fly from the ingame video options menu? Maybe a Scope Blur On/Off option? Nvidia camofix?
- I use a cheap TN panel LCD. If you increase contrast you kinda increase brightness at the same time which then hurts the eyes. Still I like to have a little bit more contrast in Halo since it looks a little washed out, especially Bloodgulch. Would it be possible for OS to make a contrast slider in the video options menu?
First, read this because scripts are awesomez.
http://code.google.com/p/open-sauce/wiki/Doc_Halo1_NewScriptInterfaces (http://code.google.com/p/open-sauce/wiki/Doc_Halo1_NewScriptInterfaces)
1) You can view objects locations and angles, but I have yet to see anything for saving information to a file and later reloading it. If you have read the above link, object_data_get_real (unit (list_get (players) 0)) position x (repeat for y, and z. then for forward and y too) you can see their weapon with player_data_get_object 0 weapon0, etc.
2) Camofix is already there (at least its making camo run perfectly on my nvidia card lol. If it wasn't meant to do that for me, then I'd be confused as to why it is lol). if your running a console command you can include them in your map's scripts in a widget for turning on and off, or just use them from console lol. I don't see why you wouldn't be able to build a version of OS with that command binded to a key.
3) Post Processing. You can write a file that does whatever you want. you can have it multiply the color by itself, then + itself. That way the darkest areas receive less light since 0.1*0.1 is less than 0.8*0.8; the multiplied version will be overall darker since its decimal numbers, thats why you add it to the original version so it becomes overall more bright, but mostly in the brightest areas. you can continue to subtract some light if you want, but whatever; Basically do random math until it looks like what you want lol (yay for not caring what numbers you toss in!), there is a xml file so you can load your custom post processing files whenever regardless of map (you can compile them into tags too. thats always what I did for testing since I never got the xml working right for myself lol) If you go to that first link, and go back to the main page for the wiki, you'll notice some stuff on post processing, read it.
Kornman00
September 17th, 2011, 08:41 PM
The original Synapse project (Cerebrum was the web interface) was going to include stats tracking. The way I was going to record stats was by actually recording the low-level events of the game, then postprocess it later (allows new stats could then be retroactively calculated, plus a few other ideas I had). Theoretically, this "film" could be played back. However, I never made (nor plan) source to Synapse (which was actually a plugin to OS) available.
So to answer your question, sure, it's possible. However, not by your suggested method (wouldn't 'fit'). Nor am I going to work on it. I've got other work opportunities outside the CE engine that are going to be taking all of my free time.
Hondros
September 18th, 2011, 12:28 AM
.dll creation and installition woes... Okay, so I have downloaded the source, and I opened the project for OpenSauce_PC. Upon first trying to compile, it complained about GameSpyOpen. So I figured out where to download and install that. Upon next compilation attempt, it yells at me about some "astfax.h" file or something (idr, I can't get it to bring this error back). Finally find out it has something to do with MFX (which I already have, so I just tell it to use those include files).
Next, it complains about line 74 in GameSpyOpen/common/gsCore.c [Some type of function cast error]. So, I just decide to comment out that block. (It's not much, just something about exiting). I was so excited, the next time I hit "F7", it compiled just fine! Created my .dll file, and I placed it in the HaloCE folder.
Upon running HaloCE, it tells me that it "Cannot allocate required memory. Some other application has loaded where Halo needs to be located", and then freezes at "Gathering Exception Data". Strangely, I can only replicate this problem 5/7 times so far. When it does run though, it crashes directly after the splash screen. Any suggestions, or anything I'm doing wrong? Perhaps I have downloaded the wrong libraries? I downloaded the libraries that were required from the first post (I already had DirectX, so in reality all I downloaded was Boost. I found out I needed the GameSpyOpen library after I tried compiling)
EDIT: Please excuse my stupidity. I just released that I had downloaded from the repository, instead of the link you had lol. Also, I still get the error about not being able to include "afxres.h". I should be able to fix that though.
EDIT2: So this is only compatible up to 1.08... Wonderful, wish I would've known about this _before_ I had went through all this downloading and trying to get this to work. What exactly stops me from using this with 1.09? I'll be looking through the code to see if I can change anything, but if someone could point me in the right direction before hand it'd help _a lot_.
EDIT3: I apologize for making you potentially waste your reading time. However, I have been googling and have found a potential ver changer. I shall try this and report back.
EDIT4: Alright, so I tried using the version changer. No avail. So instead, I uninstalled, reinstalled, and patched up to 1.08ce. Now it tells me I have a corrupt exe when trying to boot with the d3d9.dll. I think that this is where I end my quest to try to get this to work.. Nothing on google is helping me, and I can't seem to figure this out...
Kornman00
September 18th, 2011, 12:30 PM
The most up to date code is found in our repo (http://code.google.com/p/open-sauce/source/checkout). All new updates are discussed here (http://www.halomods.com/ips/index.php?/topic/6-open-sauce-halo-custom-edition/).
You need DX and boost, but you don't need GameSpyOpen. In Common/Precompile.hpp, comment out line 74 (at the time of this post) where we define YELO_USE_GAMESPY_OPEN.
afexres.h is included in Halo1_CE.rc. That's stuff auto generated by VC++. If you're using Express, that's probably your problem.
The only supported version of HaloCE is 1.09. It's possible to compile the code for 1.08 (see Common/Platform.hpp), but that stuff never gets tested and thus we don't support it. Main.cpp checks the version of the game and will give an error if you try to run it with anything other than the version it was compiled for. It will also give an error if an application besides the HEK or CE tries to load the .dll.
Version changer only changes the id and build string used by the gamespy protocol. It's pointless for anything else.
Hondros
September 18th, 2011, 01:11 PM
Kornman, thank you for pointing all this out. I have commented that line out. And yes, I am using VC++, but it no longer complains about that. However, it seems to be complaining during linking now. This is only one line out of about 25:
YeloSettings.obj : error LNK2005: "void __stdcall Yelo::Networking::VersionCheck::Initialize(void)" (?Initialize@VersionCheck@Networking@Yelo@@YGXXZ) already defined in GameSystems.obj
Now, I did a search through the whole project for VersionCheck::Initialize, and found only two instances, which were both on the same line. Commented that out, didn't change a thing.
What should I be using to compile this other than VC++? I can't seem to figure out this problem.
EDIT: Going through some of your code, I love what you put in places xD "Step 1: Bash head on keyboard. Step 2: Repeat."; "(FU)this version isn't supported". Great coding btw.
Kornman00
September 18th, 2011, 01:17 PM
In VersionCheck.hpp, the definitions in the #else block should only be declarations, with the actual definitions being in VersionCheck.cpp. The fix should be pushed to the repo in the next few minutes.
Hondros
September 18th, 2011, 01:22 PM
But, shouldn't that only apply if I didn't comment out the line to use GameSpyOpen? All the code in networking.hpp and networking.cpp is grayed out. *bangs head against keyboard* I really need to brush up on my problem solving skills.
In the mean time, I'll just wait for the new version in a few minutes, and try again.
EDIT: Okay, got it to compile. Just copied over the GameSpyOpen lib to the shared includes. Going to try out the dll now.
EDITAGAIN:
ldsjfkljkdf SERIOUSLY!?!?! Jesus christ. Why can I not get this to work. It did the small splash screen, then went and changed resolutions, then waited a few minutes. After that, it crashed. Said gathering exception data, and then froze. Do you have any ideas as to what could be causing this? I am using HaloCE 1.09, freshly updated, no crack.
Kornman00
September 18th, 2011, 01:35 PM
Are you running xfire? If so, go jump off a bridge please!
Hondros
September 18th, 2011, 01:37 PM
No I am not. Any other ideas? I thank you for taking the time to help me out.
Kornman00
September 18th, 2011, 01:48 PM
Are you trying to run the game with some command line arguments? eg. -windowed, etc
Hondros
September 18th, 2011, 01:50 PM
No, I'm directly running haloce.exe. I think i'm going to do another total reinstall, see what happens.
Hondros
September 18th, 2011, 02:10 PM
Alright! I got it to work! Unfortunately, I can no longer create internet games, it keeps telling me that my key is invaid, yet I can join games. It's a legit copy, not a pirated. I don't think it's a problem with OS though.
nuttyyayap
September 19th, 2011, 11:10 AM
Hey, Korn, do you need a specific compiler to use this or can I use any?
I'm just asking as I use Codeblocks and I don't wanna break anything.
Kornman00
September 19th, 2011, 11:16 AM
The only supported compiler is VC++ 2008.
Kornman00
September 22nd, 2011, 03:32 AM
New custom networking packets? In MY OpenSauce? It's more likely than you think (http://www.halomods.com/ips/index.php?/topic/6-open-sauce-halo-custom-edition/page__st__40__gopid__4145#entry4145).
Rook
September 28th, 2011, 07:21 PM
I feel out of place asking this but is there a dll version that works with 1.09? All I want to do is the yelo stuff to change FOV and weapon positions and would rather not mess with version changer.
Kornman00
September 28th, 2011, 08:08 PM
We're still developing the next release of OS, so there isn't anything official that has been released. The source is all there on google code though, so someone could build a dll themselves.
gabr9999
November 1st, 2011, 04:51 PM
i dont now how to even compile! i now i am a noob! but at least i try!
and you are an expert please help me!
please post a tutorial on how to compile the open sauce code!
and if it isnt too much can you make OS_sapien and the rest compatible with quad-core computers please?
i try it with one i found already compiled but cant even run them! yes they have .exe! and please i now you already answer but can you please make it for halo ce. 1.9?
sorry for the troubles but as i already said i am a noob sorrry!!!!:ohdear:
Goldkilla
December 11th, 2011, 06:32 PM
If I recall, the next update will be when CMT SPv3 comes out right?
Daishi
December 13th, 2011, 07:44 PM
Need a bit of help with getting OS working.
Just returned to halo after a long hiatus related to military shit, and I am completely lost now. I put the d3d9.dll file in here* into my halo base folder, then threw in the MLAA injector as its d3d9_proxy.dll. Game is at 1.09, and when I start it up I get a message telling me to install dx9.0b.
I proceed to download dxwebsetup and it tells me that I already have an up to date or more up to date version than it, and am now at a halt in progress. I can't launch halo with the OS dll applied to my game. However when I remove it and use only the MLAA dll it works fine.
*here refers to http://www.modacity.net/forums/showthread.php?24174-Alright-I-m-a-bit-confused.-Minor-Open-Sauce-issues-inside
Jelly
December 13th, 2011, 08:24 PM
you might need visual c++ 2010 runtimes
Daishi
December 21st, 2011, 02:30 AM
So when I get those they say mine are more up to date too. wtf.
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions Inc. All rights reserved.