Do it with passion, or not at all.
Do not say everything you know. Know everything you say.
[ MarySP ][ nacl-h2o ][ The next SC Version ♥♥♥♥ing pwns! ][Puchis Maps ]
Puchi what maintaining are you talking about exactly? Your explanation seems reasonable, but I am pretty sure the hand models work fine now and don't see how any update would hamper the low def models. When have the low def models had to be "maintained" or upgraded in the past to be compatible? Ever?
Before this thread is kill, I understand this will not be changeddespite our begging lol a Steam Workshop file will be very popular perhaps yoloswag
Last edited by CryoKeen; 21-04-2015 at 08:40 AM.
Valve must be illogical then. Consider that the Blue Shift HD models were optional, even though the model quality only advanced by about two years. Comparatively, with Sven Co-op, the discrepancy between the overall visual quality of the game and the HD models is almost a decade. Including LD models would only be illogical if the rest of the graphics matched the HD models.
Hence modifications that break old models should be kept to a minimum. Did it occur to anybody that Sven Co-op, especially now with angelscript and what have you, relies a lot on the ability to customise content for each individual mission? The big hurdle isn't to upgrade a hypothetical LD pack; it comes in the form of all those custom models, in hundreds of different custom maps, that have to be upgraded as well. Unless you are unconcerned for modder-friendliness... which would be strange, considering that the major developments on the mod focus on the ability of the mapper to customise the game more.
Last edited by Aurora; 21-04-2015 at 10:17 AM.
dropping my few cents here:
why not just copy the .smd file for the animation then? you could easily write something that cross-checks folders for files n stuff
i mean the bones ARE named same arent they? theres no point using different bone names for LD and HD models, you could just easily swap the reference .smd and thats it.
Like when somebody from the team wanted an all new grenade launcher with all new models and all new animations, rather than bothering to get a simple alternate modification to the spore launcher to suit the same purpose, which probably would've been possible with angelscript? I don't doubt that you've a lot of work on your hands, but it seems quite a bit of it already consists of adding not-so-critically-important features that will require maintenance just the same, if and when changes are made to them. I hope the importance of modder friendliness and backwards compability is realised and prioritised over constantly changing everything upon the new version's release.
You haven't even been able to use Angelscript yet, so please don't go around claiming what is and isn't possible with Angelscript.
The way the game's weapon animation system works is that each animation is activated using its index in the list of animations in the model.
If "idle" is the first animation in the model, then using index 0 sets the entity to use that animation. Removing an animation screws that up.
Here's code from Valve's own SDK for the crowbar: https://github.com/ValveSoftware/hal...ls/crowbar.cpp
The enum gauss_e (yes, really) defines the indices for all animations in the model. The names you give them in the model don't matter.
You'll also notice that the idle index is never used in this file; that's because the weapon code makes certain assumptions regarding animations that all weapons need to have.
Move the idle animation down, and everything gets screwed up.
Also, given the age of the engine code base, there will be drastic changes that will likely break some existing content. Angelscript for one will be changed if the internal interface it maps to changes. If we have to provide backwards compatibility for old scripts, our code base will become one big mess. If you've ever seen the lengths Microsoft has to go to to keep old programs working on newer versions of Windows, you'll know what i'm talking about.
In which case all new animations should be added to the end of the list and unused animations preserved regardless in the QC file to avoid compability issues, no?
Are you saying that each update to the game has a likelihood of making custom scripts made with AngelScript, dysfunctional?
Do you have any idea how hard it would be to preserve old versions of interfaces alongside new ones? Especially when the original interface used something that no longer exists.
oh yeah that weirdass animation index thing in the hl, but that still shouldn't make any difference if there was ld and hd models made in the sven devteam, as replacing the reference .smd doesnt change .qc anim order.
Yes, You could let somebody make the pack for you. But you could also change the way animations are handled from index based to name based, but that would create even more problems with older models.
edit: how about (when workshop comes around), you guys make "official" LD models for sven? OR even better: change how the current models look to fit better into the game?
Everything you're suggesting requires even more work. If we have to do everything that people request, we'd never release.
I take that as a resounding 'yes', then.Originally Posted by Solokiller
You don't seem concerned for the fact that neglecting backwards compability will create a far bigger amount of work than that for the mappers and modders who keep the game afloat with new content. It's a very unattractive prospect to learn a new scripting language and painstakingly create custom scripts for one's project if the scripts are broken and have to be revised every time the game is updated, which I assume will happen more frequently after Steam integration.
So we have to write a perfect interface that never needs changes, even though all the changes we need to make would take a very long time (read: years) to get done.
You can't have your cake and eat it too.
this +1, as in why angelscript over something simpler for mappers like lua, sure it takes longer to implement but hey, it would be easier to do stuff later on (see: garry + gmod + implementing lua into source engine)
also since i know you guys are focusing on server side stuff, it would be nice to have some general knowledge about how sven handles stuff, as in are models (incl. v_ models) handled client side like in gmod or server side? and are animations handled clientside or is it serverside networking reasons? and what about the clientside stuff later on when 5.0 has came out like drawing sprites on the hud (or even better: pngs with alpha!), playing sounds and detouring original game functions/binds (as in recycle take cover shout into spell cast), and will we be able to listen to client key presses or make our own clientside commands? -- yeah i know i ask way too many questions but it would be nice to know beforehand what ideas i should scrap out.
i'm completely fine with the fact that i have to update scripts every now and then since implementing something perfectly is not possible, there is always bugs and stuff.
though when you are doing somekind of rewrite in the far future, breaking off old scripts is the only option (see: Gmod "huge" lua update)
If a large portion of pre-5.x maps are suddenly unplayable due to some change, then that's probably going too far. I think the community can deal with some content changes that are relatively easy to fix (like with the player model compile-o-matic thing).
So how about that HD models checkbox? Would it be a major effort to fix/adjust it for Sven Co-op? Assume the LD models are already updated (I'm considering just doing this myself).
Love,
w00tguy
im still waiting my convertion of -REO for 4.8
well, it looks like time to learn about mapping ^^
In many ways, yes. They are. We removed that checkbox around a year ago. It's not coming back.
There will be no officially maintained LD pack. We're not interested. The community is welcome to continue doing this as they have been, but it's not going to become official content. We want better content for the future releases.
Adam "Adambean" Reece
Sven Co-op team
Also on: Steam | Facebook | Twitter | YouTube | Twitch
Released AMXX plug-ins: Bind number slots | NextMap with Sven Co-op fix | Sven Co-op administrator icons
Lua isn't necessarily simpler. The existing Half-Life community already uses languages like Pawn or Small for server plugins. I picked Angelscript because it follows the C++ syntax with only a few minor differences.
Do you know any of the following languages?
- Javascript
- Small
- Pawn
- C++
- C
- D
- PHP
- Perl
- Java
- Objective C
- Actionscript
If you said yes, then you can pick up Angelscript pretty easily. Lua has it's own time investment required.
That said, yeah, Lua is easy to learn. However there is more power with Angelscript available to the scripter by using a cleaner language construct.
Need to write a class in Angelscript? Sure, just do the following:
How does Lua do that? Well, Lua doesn't support classes, but you can hack around the language to do so:Code:class SomeAngelscriptClass { void someFunction() { Alert("Hello there"); someProperty++; } int someProperty; } SomeAngelscriptClass classHandle; classHandle.someFunction(); //Print hello there, increase someProperty by 1;
http://www.lua.org/pil/16.1.html
Have fun reading that documentation.
Angelscript wins.
Also, I wanted to say that Garry Newman from Garry's Mod has decided against Lua.
http://garry.tv/2014/08/16/i-fell-out-of-love-with-lua/
I agree with all of his points. I was actually considering choosing Javascript for Sven Co-op's scripting language, but there were some drawbacks. There isn't really a nice clean way to integrate it without some headaches and the language itself has some shortcomings.
Common sense reigns supreme.
i see that you read my message as "lua is better than angelscript", which isn't the case. i just said that it WOULD be easier for mappers to do quick scripts, and i do know that lua has it's own problems and stuff, but it would have supported easy content creation for people that have no clue what they are doing.
IMO its a great thing that svencoop 5.0 will allow scripting, but dont get me wrong here, i dont hate angelscript, i was just thinking about the mappers who want to make custom scripts for their maps without wasting hours, even days to learn basic c++ syntax and other various things.
I didn't read your message as "Lua is better than Angelscript." I thought you made the argument that because Lua is so "simple" mappers would rather use it. In which case I think that's not true. When a scripter eventually wants more power, Lua falls flat on its face. As seen in Lua's class programming example, Lua requires a large amount of code to do something simple.
I doubt they'll waste hours or even days learning basic C or C++ syntax. Generally speaking you need to master function calls, variables, and some basic syntax rules. This is no different from Lua.
If someone was learning programming for the first time using Angelscript and Sven Co-op, they'll also be better off because the syntax is so similar to other languages. Lua is kind of a dead-end.
mmmh thats true too, and it will probably help starting game devs later on.
iirc gmod handled lua's limitations by allowing .dlls to be loaded into the runtime (like awesomium) though someone then figured how to abuse this for hacking servers and stuff.
anyways i hope AS will give us full control over the engine (minus some various things like setting rcon password :-D) so we can do awesome things with it
Probably nothing less than anything Metamod can do.
Adam "Adambean" Reece
Sven Co-op team
Also on: Steam | Facebook | Twitter | YouTube | Twitch
Released AMXX plug-ins: Bind number slots | NextMap with Sven Co-op fix | Sven Co-op administrator icons