Duke4.net Forums: Shadow Warrior - "New Episode" - Duke4.net Forums

Jump to content

  • 44 Pages +
  • « First
  • 23
  • 24
  • 25
  • 26
  • 27
  • Last »
  • You cannot start a new topic
  • You cannot reply to this topic

Shadow Warrior - "New Episode"

User is offline   TerminX 

  • el fundador

  #721

View Posticecoldduke, on 25 June 2017 - 06:35 PM, said:

Its not maintainable. There is no other way to say it. Can you explain how that loader works? If there was a bug in it, could you or Evan go in and fix it? How long would it take you to find the bug?

Yes, I know how it works. I've optimized several bits of it myself and even gained speed by porting an assembly version of one of the algorithms used for .png to tightly written C.

Quote

I would trust a library that is being maintained by numerous talented engineers over the past twenty years, then anything custom made in house(not knocking you guys, but you can't argue the ISV libraries have more dev hours on them, then Kens code). Remember Richard, I have a unique view on stuff like this :P.

You have much less of a unique view on this than you think. It's not about trusting the library, it's about not wanting some huge collection of external crap bolted on to the project. We run on platforms where using that kind of thing isn't feasible or desirable, and it just makes more work for all of them. Maybe you'd realize concerns like this exist if you hadn't shitcanned our entire perfectly functional build system in favor of clicking on things in an IDE...

Quote

We will agree to disagree on this, moving forward on this particular topic is pointless and doesn't get us anywhere.

What's there to disagree with? I can't believe you think I don't know how the SW source works after over a decade of experience with the engine source. I'm seriously dumbfounded.
1

User is offline   Ninjakitty 

#722

It seems you both have a lot of knowledge that would be really beneficial to the port.
It'd be great to see you both working together :P
2

#723

View PostTerminX, on 25 June 2017 - 06:44 PM, said:

Yes, I know how it works. I've optimized several bits of it myself and even gained speed by porting an assembly version of one of the algorithms used for .png to tightly written C.

That makes sense because the compiler can't optimize assembly. The speedup you got was because you converted the assembly to C and let the compiler optimize the shit out of the code. Inline assembly doesn't make sense anymore because compilers are really fucking good at optimizing code.

View PostTerminX, on 25 June 2017 - 06:44 PM, said:

You have much less of a unique view on this than you think. It's not about trusting the library, it's about not wanting some huge collection of external crap bolted on to the project. We run on platforms where using that kind of thing isn't feasible or desirable, and it just makes more work for all of them. Maybe you'd realize concerns like this exist if you hadn't of shitcanned our entire perfectly functional build system in favor of clicking on things in an IDE...

This logic doesn't make sense for not using third party libraries. I already have a bug ticket for fixing the makefiles. You will not find a multi platform engine now a days that doesn't use third party libraries from ISV's. Trying to maintain custom solutions(when the original vendor actual made a working solution) doesn't make sense. Is your only issue the manual data entry in the makefile?

View PostTerminX, on 25 June 2017 - 06:44 PM, said:

What's there to disagree with? I can't believe you think I don't know how the SW source works after over a decade of experience with the engine source. I'm seriously dumbfounded.

I think your really good in build, but to my knowledge you haven't made gameplay code modifications to the Shadow Warrior codebase. If I asked you right now, whats the process for making a new AI actor in Shadow Warrior? I have no doubt you could look at the code and figure it out, but all I'm saying is you would have to look and figure it out like I'm doing. Hence I'm docing shit up and figuring out how the code works. I have no doubt you can look at my notes and immeditally know what to do, all I'm saying is you would have to at least look or figure it out for yourself. That's all I'm saying.

This post has been edited by icecoldduke: 25 June 2017 - 07:04 PM

1

User is offline   TerminX 

  • el fundador

  #724

I'd probably start with copying one of the numerous source files for specific enemies into a new file, or build on one of the unused ones that's already in the source. Their code is pretty easy to understand.
0

#725

I would do the exact same thing, and that was my point :P. You would have to copy a template and implement something yourself to understand how it works. That is exactly what I'm doing. The bar for being an expert, in my mind, is stepping through code, and figuring out how everything works(including all the hidden gotchas). You can't do that without experimentation.
0

User is offline   TerminX 

  • el fundador

  #726

You can't do that with gargantuan image libraries, either.
0

#727

View PostTerminX, on 25 June 2017 - 07:16 PM, said:

You can't do that with gargantuan image libraries, either.

But I can do that by experimenting with blood particles :P.
0

#728

View Posticecoldduke, on 25 June 2017 - 01:15 PM, said:

If they believe I'm "invading there turf", I want to fix that, but I don't know how.

View PostTrooper Dan, on 25 June 2017 - 12:56 PM, said:

Right now they seem to perceive you as someone who is invading their turf and acting like a bull in a china shop.

My foot in the door leading to legit coding for DNF started out over the true "Chair Story" disagreement regarding pre-physics-engine physics in the game. I was 100% level design at the time and though I had studied CS in college and written some programs, I was clearly not up to the level of the actual engineers on the project. Regardless, Brandon Reinhart got me up and running with UnrealScript and I put my first change in so that when you threw items they could land on arbitrary sides. This opened the door for me to start writing a ton of interactivity via UnrealScript and shifting ever more out of Level Design.

Fast forward a couple years and we're at the new office with the marble floor duke symbol. I've started venturing into the C++ part of the codebase semi-regularly and while the engineers tolerate it they aren't thrilled. We didn't have a code review process mind you.

One late night I thought I had discovered an optimization and refactored a fundamental low level part of the tick functions. In simplest terms I found an array that was being iterated twice and I couldn't figure out why. It was part of handling events and the entire point was to allow events later in the array that are meant to clear out events that are earlier in the array to still be processed in the same frame. I got rid of the duplicate loop and amazed myself with the minor framerate improvement since this was happening on every ticked actor. Came in the next day and Kyle Davis is very upset with me because I had introduced some subtle but fatal bugs of course. Ever since then, even at Gearbox, he took every opportunity to remind people that I am "NOT a programmer".

One of the other engineers described it as "It's like we're cultivating this garden and he just comes storming through stomping on everything." :P

I took notes on my mistakes and learned form them and wound up writing plenty (probably shipped) semi-low level code before the exodus finally kicked in. Though to get back at Kyle for disparaging my programming skills (he also helped me get better, btw) I made sure our crash report dialog didn't have a submit button... it instead had a "Blame Kyle" button. I still straddle that line role wise, but these days the engineers are content to have me helping tend the garden.

------------------

EDIT: I've just realized in hindsight this could seem I'm comparing icecoldduke's coding skills to my underdeveloped ones. That was not my intent... Trooper Dan's line just had me laughing at the memory. icecoldduke's coding boobs are far more developed than my youthful risky flirtations with unknown strange functions were, and I have a soft spot for bulls in gardens.

This post has been edited by NeverSawFreeWilly: 25 June 2017 - 09:47 PM

6

User is offline   Wombat 

  • Robman 3: Revenge of the Shit

#729

Hello, I'm new here and heard about the forum when the Shadow Warrior betas were released.

Would it be possible for icecoldduke to keep his port as a separate entity? It doesn't appear that merging it with TerminX and Hendricks' program is going to work out very well and may stifle icecoldduke's creativity.

Something that would be a good idea would be the option in the menu to undo all of the Redux art and bloodsplats + any other upgrades that aren't in keeping with the original. That way he can add in all sorts of goodies but keep them optional for the end user.

I think the main goal here above all else should be creating a stable port that resembles the original game as close as possible with the extras optional and keep backwards compatibility with previously created content.
2

#730

View PostNeverSawFreeWilly, on 25 June 2017 - 09:03 PM, said:

EDIT: I've just realized in hindsight this could seem I'm comparing icecoldduke's coding skills to my underdeveloped ones. That was not my intent... Trooper Dan's line just had me laughing at the memory. icecoldduke's coding boobs are far more developed than my youthful risky flirtations with unknown strange functions were, and I have a soft spot for bulls in gardens.

I wouldn't have taken it that way. It was a great story, and ironically one of my junior engineers did something similar on the last project I was lead on. Took me a bit to track it down, and when our lead QA got the build with the fucked up code, I remember the look on his face when he stormed into my office in a panic.

View PostWombat, on 26 June 2017 - 12:30 AM, said:

Would it be possible for icecoldduke to keep his port as a separate entity? It doesn't appear that merging it with TerminX and Hendricks' program is going to work out very well and may stifle icecoldduke's creativity.

That code is not going to be in main. I have two branches, main, and thirdepisode. Even though I actually reverted the blood code, experiments and such that are part of the bigger picture for my thirdepisode mod will go into the thirdepisode branch. From this point on only bug fixes will go into my main branch, only features that will be moved over are scripting enhancements that I make for my mod.

Posted Image

For the time being, my third episode mod(Lo Wang assassinates Kim Jung Un), will be in my public branch which you can find here: https://github.com/j...ee/ThirdEpisode If you just want main, its at the same spot as it was before https://github.com/j.../ShadowWarrior/

This post has been edited by icecoldduke: 26 June 2017 - 04:30 AM

0

User is offline   Forge 

  • Speaker of the Outhouse

#731

ICD, just remember why you started this project in the first place.

It was supposed to be Your port for Your mod.

People can make suggestions and requests, which is to be expected, but they can take their demands and unnecessary criticisms & stuff 'em.

I hope you see some people are trying to be encouraging, and really don't mind what the end result looks like with all the bolt-ons, as long as you're satisfied with the way it works & it does what you want it to.

Now get to work on full mouse support.

This post has been edited by Forge: 26 June 2017 - 07:04 AM

3

#732

View PostForge, on 26 June 2017 - 04:31 AM, said:

It was supposed to be Your port for Your mod.

I can't drive this point home enough. I am making this port because I want to make my mod. I started this port because there wasn't a platform to make mods for Shadow Warrior. I made the scripting system a priority because I have a lot of gameplay ideas that I can't implement using the standard ST1 system.

Richard, even if you understand how Ken's image loader works, how do you expect any outside engineer, to come in, help out, when that code is a fucking mess? You consider these libraries a bunch of bloat, but these are well understood libraries, that any engineer can come in and figure out(if they don't know already).

For my mod I have a huge problem. I want to use 3d models, but the engine only supports MD3. So I have two options, re-write the entire model loader, so it can be extended for FBX/SMD and future model formats, or make a FBX to MD3 converter. I've tried a few that exist and the end result is just terrible. Which option do you think is best?

This post has been edited by icecoldduke: 26 June 2017 - 06:54 AM

2

User is offline   Hank 

#733

View Posticecoldduke, on 26 June 2017 - 06:50 AM, said:

For my mod I have a huge problem. I want to use 3d models, but the engine only supports MD3. So I have two options, re-write the entire model loader, so it can be extended for FBX/SMD and future model formats, or make a FBX to MD3 converter. I've tried a few that exist and the end result is just terrible. Which option do you think is best?

As I mentioned before, what ever works for you, and since it looks like you guys are going your separate ways:
Based on my amateur experience, trying to convert my models from FBX/Collada to md3 is an abortion. So if you can do the 'former' option, it might simplify the creation, (work flow) of 3D Models for your mod, and certainly draw more real artists to your project.

This post has been edited by Hank: 26 June 2017 - 09:41 AM

1

User is offline   Wombat 

  • Robman 3: Revenge of the Shit

#734

View Posticecoldduke, on 26 June 2017 - 06:50 AM, said:

I can't drive this point home enough. I am making this port because I want to make my mod.

A proper functioning port will be vastly more popular than any mod produced.
The people are hungry for a solid port (w/ multiplayer.)

On another note, how do you know some of your objectives for a mod can't be accomplished with the st1 tagging system?
I've read through this thread and it appears from your slight struggle to make a door that perhaps you still had a lot of learning to do with the tagging system.

This post has been edited by Wombat: 26 June 2017 - 09:54 AM

0

User is online   Mark 

#735

I've had some good success with Noesis's format converter. Doesn't always convert the model unharmed but many times it has. Maybe you can browse through that for ideas.

This post has been edited by Mark.: 26 June 2017 - 10:05 AM

1

#736

View PostWombat, on 26 June 2017 - 09:51 AM, said:

On another note, how do you know some of your objectives for a mod can't be accomplished with the st1 tagging system?
I've read through this thread and it appears from your slight struggle to make a door that perhaps you still had a lot of learning to do with the tagging system.

Here's an example. I want to make rooms, similar to Doom 2016, where North Korea troopers spawn in and the player has to kill them before the doors unlock. I want to expand on that concept more, but there isn't anything in the tagging system that will allow me to do that.

This post has been edited by icecoldduke: 26 June 2017 - 10:20 AM

0

User is offline   Ninjakitty 

#737

View PostWombat, on 26 June 2017 - 09:51 AM, said:

A proper functioning port will be vastly more popular than any mod produced.
The people are hungry for a solid port (w/ multiplayer.)

On another note, how do you know some of your objectives for a mod can't be accomplished with the st1 tagging system?
I've read through this thread and it appears from your slight struggle to make a door that perhaps you still had a lot of learning to do with the tagging system.

New Weapon ideas:
*Expander Weapon
*Lightning Gun
*Exploding Bullets for the shotgun or uzi.

New Monsters:
*Mini Boss - Zombie versions of Kim Jung Un's Father
*Monster that comes up to the player and steals weapons, items and keys.
*Monster that has some kind of shield as protection.
*More TBD

New Gameplay:
*More blood effects.

I guarantee you that none of the above ideas can be done by simply placing tags. And it would be AWESOME to have the modding capacity to add that kind of stuff.
1

User is offline   Wombat 

  • Robman 3: Revenge of the Shit

#738

I would agree that the above objectives aren't really possible with the current modding ability of SW,
you could make a half-assed new mini boss but that's about it.

The point is, if this is going to become the go-to port for SW it will have to be polished/stable and backwards compatible in order to even gain enough popularity that people will want to make mods for it, because any mods made with the new capabilities will be specific to this port alone.
It will have to be a very good port and the modding community for SW as it would appear was never very large to begin with.

If VoidSW eventually comes out and becomes the most popular port to use and isn't compatible with the mods made for icecold's port then icecold's work here really will simply be just for his episode(if completed.) Just seems like it's a shame having that much work put into it for what would eventually be a few hundred downloads for a mod, where if the port was done right it would have a long and prosperous legacy.

Those are just my thoughts, it seems like things in this regard aren't lining up properly for this effort to work out well.
4

User is offline   Ninjakitty 

#739

View PostWombat, on 26 June 2017 - 10:53 AM, said:

I would agree that the above objectives aren't really possible with the current modding ability of SW,
you could make a half-assed new mini boss but that's about it.

The point is, if this is going to become the go-to port for SW it will have to be polished/stable and backwards compatible in order to even gain enough popularity that people will want to make mods for it, because any mods made with the new capabilities will be specific to this port alone.
It will have to be a very good port and the modding community for SW as it would appear was never very large to begin with.

If VoidSW eventually comes out and becomes the most popular port to use and isn't compatible with the mods made for icecold's port then icecold's work here really will simply be just for his episode(if completed.) Just seems like it's a shame having that much work put into it for what would eventually be a few hundred downloads for a mod, where if the port was done right it would have a long and prosperous legacy.

Those are just my thoughts, it seems like things in this regard aren't lining up properly for this effort to work out well.

I think he'll get there eventually :P
I mean, he's actually made some pretty nice progress so far, but some of his methods might be a little questionable... IDK ;)
1

User is offline   Hank 

#740

View Posticecoldduke, on 26 June 2017 - 10:16 AM, said:

Here's an example. I want to make rooms, similar to Doom 2016, where North Korea troopers spawn in and the player has to kill them before the doors unlock. I want to expand on that concept more, but there isn't anything in the tagging system that will allow me to do that.

What's wrong with simply spawning a key?
0

User is offline   Ninjakitty 

#741

View PostHank, on 26 June 2017 - 11:12 AM, said:

What's wrong with simply spawning a key?

Because that's not what he wants.
In current SW, you can't even go as far as to make a door automatically open after killing a boss. I'm pretty sure all cutscenes were hard-coded into the game (not available through tags), too.
0

User is offline   Hank 

#742

View PostNinjakitty, on 26 June 2017 - 11:15 AM, said:

Because that's not what he wants.
In current SW, you can't even go as far as to make a door automatically open after killing a boss. I'm pretty sure all cutscenes were hard-coded into the game (not available through tags), too.

I gathered that much, but as me as a player, a mystery door/gate open after an actor died is, ehmm, well, a huge mystery.
I should mention, I strongly dislike cut-scene style play, it's not a movie, its a game.

This post has been edited by Hank: 26 June 2017 - 11:22 AM

0

#743

View PostNinjakitty, on 26 June 2017 - 11:15 AM, said:

In current SW, you can't even go as far as to make a door automatically open after killing a boss.

Isn't that what's happening here? Or am I forgetting completely how those were done?

Spoiler


This post has been edited by NeverSawFreeWilly: 26 June 2017 - 11:28 AM

1

User is offline   Ninjakitty 

#744

View PostNeverSawFreeWilly, on 26 June 2017 - 11:23 AM, said:

Isn't that what's happening here? Or am I forgetting completely how those were done?

I have no idea how they would have done that in any way except hard coding... But that's an ADDON, which makes me think I may be wrong...
There are no documented tags to make that happen (I tried, and I still haven't figured it out). I even explored boss rooms in build and tried replicating the boss/door, and I couldn't get it to work...
0

User is offline   Ninjakitty 

#745

View PostHank, on 26 June 2017 - 11:20 AM, said:

I gathered that much, but as me as a player, a mystery door/gate open after an actor died is, ehmm, well, a huge mystery.
I should mention, I strongly dislike cut-scene style play, it's not a movie, its a game.

There were only a few cutscenes... Well, I guess I should really call them ending cinematics. They pretty much only happened to show the boss blowing up in more detail :P
1

#746

View PostNinjakitty, on 26 June 2017 - 11:27 AM, said:

I have no idea how they would have done that in any way except hard coding... But that's an ADDON, which makes me think I may be wrong...

There was no source code access so it's certainly using built in behavior.

Thinking more it might require the level to be a certain # in the episode list. Will try to dig around when I get home from work.
0

User is offline   Hank 

#747

View PostNinjakitty, on 26 June 2017 - 11:32 AM, said:

There were only a few cutscenes... Well, I guess I should really call them ending cinematics. They pretty much only happened to show the boss blowing up in more detail :P

I'm just doing my duty as a player ;)
1

User is offline   TerminX 

  • el fundador

  #748

View Posticecoldduke, on 26 June 2017 - 06:50 AM, said:

Richard, even if you understand how Ken's image loader works, how do you expect any outside engineer, to come in, help out, when that code is a fucking mess? You consider these libraries a bunch of bloat, but these are well understood libraries, that any engineer can come in and figure out(if they don't know already).

What's not working with it? All of the formats it loads load without issue and new formats could very easily be added to it if desired. If you get down to low enough level functions you'd have the same trouble with any other image library as well as they are all going to implement the same algorithms. Ken's library just has all of the scary stuff out in the open because it's one file.

Quote

For my mod I have a huge problem. I want to use 3d models, but the engine only supports MD3. So I have two options, re-write the entire model loader, so it can be extended for FBX/SMD and future model formats, or make a FBX to MD3 converter. I've tried a few that exist and the end result is just terrible. Which option do you think is best?

Please elaborate on why you think the entire model loader would have to be rewritten to add support for an additional format. Not liking it because it's not the way you like to do things is not a valid answer.
0

#749

I don't have my notes in front of me(I'm at work) do you have outline of how to add new model formats the engine?

This post has been edited by icecoldduke: 26 June 2017 - 12:01 PM

0

User is offline   Danukem 

  • Duke Plus Developer

#750

View PostWombat, on 26 June 2017 - 10:53 AM, said:

If VoidSW eventually comes out and becomes the most popular port to use and isn't compatible with the mods made for icecold's port


That's a lot of ifs...

You are essentially saying that if a better port comes along then ICD's port would become obsolete, which is pretty obvious and is generally the case with ports.

Given the small size of the community, the desire to make his own episode is a actually a pretty good reason to make his own port. At least that way he'll have something to show for his efforts. If he made a port on the "build it and they will come" model, there's a good chance that it would be unused for modding. Also, if he's using his port to make his own content, that will ensure that it gets better. There's nothing like actually using something yourself for exposing bugs and deficiencies.
2

Share this topic:


  • 44 Pages +
  • « First
  • 23
  • 24
  • 25
  • 26
  • 27
  • Last »
  • You cannot start a new topic
  • You cannot reply to this topic


All copyrights and trademarks not owned by Voidpoint, LLC are the sole property of their respective owners. Play Ion Fury! ;) © Voidpoint, LLC

Enter your sign in name and password


Sign in options