Why not take new U4 Engine and make an own UT4

Discussions about UT99
User avatar
Feralidragon
Godlike
Posts: 5489
Joined: Wed Feb 27, 2008 6:24 pm
Personal rank: Work In Progress
Location: Liandri

Re: Why not take new U4 Engine and make an own UT4

Post by Feralidragon »

sektor2111 wrote:I have to mention one simple thing: when a coder (even a newbie) has a few information how do engine works and checking natives (not editing or programming C++ stuff) but UScript, stuff is doable more clear, clean and way better, else everything is a guessing work for new comers to UScript, that's why at least some solid documentation would be more helpful than nothing. For me took some time to figure several things in UScript which Engine does, by logging and testing mods a bunch of times, since by simply showing what C++ side of Engine does, everything would take less time without assumptions and X tests.
That's very true, although sometimes it's not much about how it's natively done, but the actual concepts used.
This is because, in programming overall, the same algorithms are generally used by everyone, the code may be slightly different, but generally everyone uses already proven algorithms for the same things.

For example: replication.
Almost every system works pretty much the same conceptually concerning replication, be it a game engine, or even a master-slave database, or a distributed system.
Therefore, if you get to understand what "replication" actually is overall, what kind of processes are involved and the goals, you have pretty much understood 75% of how replication works in UT already, with the last 25% being how it is specifically implemented in UT itself (Unreal Engine).

Most coders/programmers see replication as this ultimate boss they cannot defeat, not because of those 25%, but because they generally lack an understanding of the 75% concerning the overall concept.
User avatar
papercoffee
Godlike
Posts: 10443
Joined: Wed Jul 15, 2009 11:36 am
Personal rank: coffee addicted !!!
Location: Cologne, the city with the big cathedral.
Contact:

Re: Why not take new U4 Engine and make an own UT4

Post by papercoffee »

Feralidragon wrote: For example: replication.
Almost every system works pretty much the same conceptually concerning replication, be it a game engine, or even a master-slave database, or a distributed system.
Therefore, if you get to understand what "replication" actually is overall, what kind of processes are involved and the goals, you have pretty much understood 75% of how replication works in UT already, with the last 25% being how it is specifically implemented in UT itself (Unreal Engine).

Most coders/programmers see replication as this ultimate boss they cannot defeat, not because of those 25%, but because they generally lack an understanding of the 75% concerning the overall concept.
I'm not a coder ...but this would interest me.
But it should be written a little bit for dummies... well because, I'm not a coder. :ironic:
User avatar
sektor2111
Godlike
Posts: 6403
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

Re: Why not take new U4 Engine and make an own UT4

Post by sektor2111 »

Eh, replication... I'm not having an obsession only for that - THAT's only ONE problem.
What I was also trying to point according to understanding in case of direct view of codes it's not only replication. I can bring other valid samples. At this moment Wiki lacks in explanations just because native side is not that known, explaining stuff which I can read from UScript side decompiled with Editor or other things - nothing so new and other explanations based on testing stuff over years.
Let me see, I was always fascinated how do A.I. works, by doing a lot of research I understood what means ActorReachable and mainly how does it work. It would be 10 times more faster and easier writing a desired AS/MH controller by reading some VALID explanations about these. Else some people are still not having any clue that InventorySpot can substitute a PathNode because I think that bEndPoint it's just a preserved boolean with less purpose like those lightning related things which have never been implemented. There is also somehow a big difference when Pawn works with bHunting=True VS Pawn which doesn't have bHunting. After a lot of tests I could figure this thing and I wrote my own code in XC_MonsterHunt. After doing a test-map I could see Bots finding a MonsterWayPoint which I could not find and neither if controller used was original one by Shrimp giving them a superior strategy using... stupid old NATIVES UN-Explained NOWHERE :loool: , and such things are disturbing not only for me.
About replication: let's say that I could paint some walls last time using a sort of decal with 0 (zero) net code, I brought some decorations like that and light, these are taking place only in client and won't charge bandwidth except actor initializing them and which is weak at Net consuming. Excuse me but replication is not always what I might need, I need to know what is doable with those natives because Epic did not explained nowhere how goes with "RandRange" even if it was fixed by "Legend" in year 2000,

Code: Select all

// Return a random number within the given range.
//#if 1 //Fix added by Legend on 4/12/2000
native(1033) final function float RandRange( float Min, float Max );
they did not use it nowhere in UT - because I saw it working properly. WHY ? I want answers not blabbering, I want more DOCS if source-code is such a big ass secret.
Because of these missing DOCS, when I have a goal, sometimes I have to write a custom tool mutator before for doing checks and figuring doable stuff or what is not doable - it's a waste of time and annoying as hell, in this game not only replication is important, we have other factors to take in account. Does anyone (except Higor) explained why is good to use a TAG inside a foreach AllActors iterator ? What any simple hints we might have and are NOT explained nowhere ?
Solution is simple: We want to SEE those functions, OR we want a comprehensive DOCUMENTATION not assumptions.
Wail
Novice
Posts: 5
Joined: Sat Sep 20, 2008 9:54 am

Re: Why not take new U4 Engine and make an own UT4

Post by Wail »

Feralidragon wrote:.
Furthermore, UT made by the community is a colossal mistake, and proof of this is UT4 itself: even with some direction provided by Epic itself, it still ended up a clusterfuck of ideas meshed together which in no way resemble a consistent UT experience at all. Even UT3 has a better consistency than UT4 at the moment.

Everyone has their own view of what UT should be, and the safest bet would be an exact copy of either UT99 or UT2004, the only UT games deemed to be good enough overall by the community, and even then the engine upgrade would make players feel an enough big difference to state that they are different (take it from someone who did something similar first with a specific mod, and the community noticed things to be "different" when they weren't at all).

Overall I agree that managing competing visions for a game like UT is very difficult, and having totally open development would be a nightmare of project management. But I'd like to contravene your statements about this at all contributing to UT4's current status. The only community contributions that were actually incorporated into UT4 were the specific weapon models. Having (unpaid) contract artists is hardly a new phenomenon in the game development process. So when we look at how the development process has actually differed based on the claim of being community-developed, there really is almost none.

The only code development that occurred outside of Epic's offices was in 2014, during the earliest phases of the project, and hardly reflect on the current status of the game. UT4 really isn't "community developed" unless you consider the existence of an active and vocal fanbase discussing your game on forums & chat rooms to be "community developed." 99.99% of that was ignored, and the UT4 we have is purely the vision of Epic Games.

You are probably correct that people would psychologically feel differences in a UT99 clone in UE4, or a UT2004 clone in UE4. However there was never an attempt to actually clone over those behaviors to UE4. The different game-feel that players experience in UT4 is precisely because Epic did a rather sloppy job of trying to port various values from prior games to UT4. No one ever sat down and methodically said, "What's the character speed, what's his acceleration, how strong is gravity, how much force does a jump impart, how strong is friction/deceleration," etc. Now, I don't think Epic's intention was ever to clone any of their prior games, but using them as a starting point is a rational choice. Unfortunately, that also wasn't done. This was only ever done piecemeal, at different times during development, all the time with other variables shifting around so no coherent foundation was ever made.

Anyway, I would definitely be interested in a project that were to pick up the UT torch. It's correct that there's no way to explicitly use the words, "Unreal Tournament," but I don't think it's in any way wrong to say that a game is "Spiritual Successor to..." or "Inspired by..." There's almost zero chance that a game would make it through development without any new ideas or differentiating characteristics.
Post Reply