Admin thoughts

Discussions about Servers
User avatar
sektor2111
Godlike
Posts: 6397
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

Admin thoughts

Post by sektor2111 »

Good day, admins. Presuming that someone someday will want to start an sort of whatever coop server then let me show you another lousy thing inspiring 0 trust right from the start.
It says how to start a cute server having prepared a BAT file which is bullshitting right in first second.

Code: Select all

@echo off
:10
start /wait /high Ucc.exe server Vortex2?game=rlcoops.rlcoops?mutator=rlcoops.rlcoopsmut,rlcoopmut.rl_custommapfixes,begonenot.begonenotcarcass,acumbleeding.acumbleedingmut?difficulty=666  log=server.log -server
copy server.log ServerCrash.log
goto 10
The question is if that guy knows what a STUPID BYTE IS or is that byte related or another useless modification ? What kind of values has that thing after all ?
Let me take a look and introducing a line from GameInfo.uc.

Code: Select all

var byte  Difficulty;									// 0=easy, 1=medium, 2=hard, 3=very hard.
I think byte has values 0-255, also I think if we have more than 255 we clamp at 1 (see insane monster damage in default MH how it becomes 1 point damage because of moron type mapping), also I think this retarded "666" in fact will have value "1" but I recommend "999" in order to keep things useless, so I think it has difficulty/skill 1 (woow, pretty insane harder). Giving current setup style I might NOT be interested about the rest if the start is a LIE.
I think last line is wrong "goto 10" it should be "goto WC and Reboot machine". Tiny tech explanation noticed by me.
Starting server in high priority will result in a good timer. In exchange for a good timer if some pawn is coded in Xidia style will successfully result in a frozen server or a broken cooler (depending on machine) because it develops a nasty loop state which won't be broken by 10000000 iterations.
Other thoughts ?
User avatar
Barbie
Godlike
Posts: 2770
Joined: Fri Sep 25, 2015 9:01 pm
Location: moved without proper hashing

Re: Admin thoughts

Post by Barbie »

sektor2111 wrote:The question is if that guy knows what a STUPID BYTE IS
That's the task of a programmer: Never trust data that you don't have produced by yourself, even not if read from configuration file or from registry or from wherever.
sektor2111 wrote:I think if we have more than 255 [for a byte] we clamp at 1
You cannot get that INI value directly by UScript, because the engine has already loaded that value from the INI file. How a range mismatch is handled depends on engines' implementation of reading INI files. In the case of 666 for a BYTE data type the Linux' UT engine I use returns ... 154. :lol:
(Probably the value is read as an (u)Int32 and cut off at Bit 9: 666 AND (2^8-1) == 154. (I even tried 2^32+1 for a BYTE INI value: no crash; it results in 255.))
sektor2111 wrote:"goto 10" it should be "goto WC and Reboot machine".
Until Windows ME (RIP) I'd agree, but terminating a Win32 process (coming in with WinNT and later Win2k and WinXP) should release all its resources. So a reboot should not be necessary.
sektor2111 wrote:Starting server in high priority will result in a good timer.
This is probably not needed with nowadays machines - they are much faster than 15 years before. Writing data to mass storage indeed can be a issue if not well buffered or not done asynchronously.
sektor2111 wrote:if some pawn is coded in Xidia style
What is "Xidia style"? I've only heard of Gangnam Style. :ironic:

<EDIT>
Corrected "2^8" to "(2^8-1)"
</EDIT>
Last edited by Barbie on Wed Apr 27, 2016 2:45 pm, edited 1 time in total.
"Multiple exclamation marks," he went on, shaking his head, "are a sure sign of a diseased mind." --Terry Pratchett
User avatar
sektor2111
Godlike
Posts: 6397
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

Re: Admin thoughts

Post by sektor2111 »

Barbie wrote:I've only heard of Gangnam Style. :ironic:
Me, too... You might wanna see XidiaMPack if you don't know MH stuff yet from whatever LiandriInvasionv2. When such a Gangnam pawn lands in water I think this best moment. The idiot making those "pawns" and using Bot code did not copied sequence for water, so pawn if by chance lands boosted or dodging in that little water location = crash for some "operation bla bla too slow" or if server is started high prioritized then = Lost forever also in Gangnam style. Not sure if a push-patch can operated by setting up a SlimeZone with a very fast damage destroying everything there else it's a stupid lottery. The rest of byte maths for me is simple as follows:
I was joining in a simple MH server where some monsters due to SetPawnDifficulty formula blabbering punchDamage, RipDamage and etc garbageDamageTarget becomes "too strong" like a hit got from a whore which was tranquilized with sedative for animals, as longs as Unreal Engine was dealing using another Gangnam formula toward bytes going over 255.
So to speak I used to move near monster in "meleerange" and happily firing weapons as long as that Monster was damaging me very wick, immediately regen-mod adding my health back so you don't even need any skill for killing such an "awesome" boss.
To not mention what a Pawn does at Difficulty vs Skill formula, Skill beyond 4 at ScriptedPawn makes it to not longer aim correctly. So in Skill 7+ it won't be able to hit you from a long range due to that "Gangnam" formula (you might compute maths if you have such addiction).
Last edited by sektor2111 on Wed Apr 27, 2016 5:28 pm, edited 1 time in total.
MrLoathsome
Inhuman
Posts: 958
Joined: Wed Mar 31, 2010 9:02 pm
Personal rank: I am quite rank.
Location: MrLoathsome fell out of the world!

Re: Admin thoughts

Post by MrLoathsome »

Guess I am a bit slow in the head but I just use valid values in the range 0-3 for the difficulty setting in the server startup script.
You can edit those files and change that value you know..... :what: :ironic2:
blarg
User avatar
Gustavo6046
Godlike
Posts: 1462
Joined: Mon Jun 01, 2015 7:08 pm
Personal rank: Resident Wallaby
Location: Porto Alegre, Brazil

Re: Admin thoughts

Post by Gustavo6046 »

But seriously, talking about really bad number, and using it as example, and doing crap just to target admins that want to LEARN... I guess this guy has serious problems with managing stress. Please don't dump your server rage here!

It even looks like you were destroyed during a MH match.

But seriously. I do agree in some parts, for example, I can't join some servers that Italians can, and there are NO FRIGGING NORMAL SERVER!! Everything with a sh*tload of mods that make it crap, like Strangelove on already-overpowered MH2 and sniper arena for NO ACTUAL REASON... Or that day I joined a MH server with a map that had Evil D*cks, basically Skaarj with Redeemers below their "pelvical region". :roll:

And finally, I hope no admins take my work while my work is crap. Or else everyone that joins the server, including me, will be greeted by a f*cked up scene: vehicles that get destroyed as soon as you get them, or a flamethrower that only sets yourself in fire!

Good day, and thanks for your opinion, Sektor :)
"Everyone is an idea man. Everybody thinks they have a revolutionary new game concept that no one else has ever thought of. Having cool ideas will rarely get you anywhere in the games industry. You have to be able to implement your ideas or provide some useful skill. Never join a project whose idea man or leader has no obvious development skills. Never join a project that only has a web designer. You have your own ideas. Focus on them carefully and in small chunks and you will be able to develop cool projects."

Weapon of Destruction
User avatar
sektor2111
Godlike
Posts: 6397
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

Re: Admin thoughts

Post by sektor2111 »

Gustavo6046 wrote:But seriously, talking about really bad number, and using it as example, and doing crap just to target admins that want to LEARN... I guess this guy has serious problems with managing stress. Please don't dump your server rage here!
It even looks like you were destroyed during a MH match.
I was asking about thoughts from admins - you seems to have a stress when I wanna speak with others. Maybe you wanna be one sort of admin, eh ? Then we can ask questions to your players what they think, right ? The rest of stuff which I'm talking about can be downloaded - if you are blind at what is around it's not my problem - I was tracking some trails posted right here, in this forum... and is exactly what I found - imagine that I'm not the only one seeing that, it's PUBLIC. Now do you have enough stress ? Good... then put your difficulty byte at 4096 if it sounds more cute.
__
I know what you could see in those Levels - some pedophile stuff I guess, if memory doesn't cheat me they were TimpokoSkaarj or such WC stuff - Never liked those "Skaarj" I was disgusted 2 in 1, ugly map and them + map where they have been added, was lottery in some point - to break or not break. Aside, No relics from any kind due to... 0 paths. All right, Shall I open a topic about whatever prototype of Relics and SwarmSpawners ? Nope, because this way of trash empty cubes was under debates at BU a few years ago if I well recall, encouraging only a null skill gaming.
Results ? Sure, nobody knows a sh!t about monsters except a few old guys addicted to their work and who never leave empty maps. And in next period of time a new generation of mappers didn't even have a clue if monster can track player or can do some stunts based on pathing - bad learning because of some old farts triggering people to the wrong way keeping their brain limited like a primitive worm.
In other side "admins" :lol2: - to be honest many of them don't know what they do (it's normal at start of working - me example trying "cool" stuff - for about 4 months when I deleted all crap) but they don't learn not even after 20 years how to Improve stuff as much as possible. But... I will help in building a list with 2048 files loaded as "ServerPackages" to be there just in case :loool: .
My question here is if it worth to start a crap if looks bad right in firsts 3 seconds. So Gusty if you feel disturbed/thrilled or under stress, go to speak in your topics, please, I'm NOT the guy which is afraid of numbers, I'm wiping my ass with that 666, right my ASS, because this is a tech topic not religious so let's say that I'm using to setup "Difficulty=3" in run-lines, the rest are myths for stupids ignoring tutorials.
User avatar
Gustavo6046
Godlike
Posts: 1462
Joined: Mon Jun 01, 2015 7:08 pm
Personal rank: Resident Wallaby
Location: Porto Alegre, Brazil

Re: Admin thoughts

Post by Gustavo6046 »

sektor2111 wrote:I'm wiping my ass with that 667, right my ASS
I'm not religious either, but now you're just scaring the f*ck out of me.
"Everyone is an idea man. Everybody thinks they have a revolutionary new game concept that no one else has ever thought of. Having cool ideas will rarely get you anywhere in the games industry. You have to be able to implement your ideas or provide some useful skill. Never join a project whose idea man or leader has no obvious development skills. Never join a project that only has a web designer. You have your own ideas. Focus on them carefully and in small chunks and you will be able to develop cool projects."

Weapon of Destruction
User avatar
Barbie
Godlike
Posts: 2770
Joined: Fri Sep 25, 2015 9:01 pm
Location: moved without proper hashing

Re: Admin thoughts

Post by Barbie »

sektor2111 wrote: another lousy thing
I just wasted two hours to get to know why a weapon, exchanged by ReplaceWith(), doesn't stay nor respawns: The mapper did not rebuild the map fully :mad2: and therefore no InventorySpots exist ("MyMarker" is "None" then) and so the code of ReplaceWith "thinks" that the item is not for picking up:

Code: Select all

if (Inventory(Template).MyMarker != None)
{
	...
}
else if (A.IsA('Inventory'))
{
	Inventory(A).bHeldItem = true;
	Inventory(A).Respawntime = 0.0;
}
1300 of 4500 (~ 30%) of my base mutator's code lines are for fixing and adjusting maps now, not counted the maps I fixed directly by editor - I should rename it to "MonsterMapFix", not "MonsterHunt".
"Multiple exclamation marks," he went on, shaking his head, "are a sure sign of a diseased mind." --Terry Pratchett
User avatar
sektor2111
Godlike
Posts: 6397
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

Re: Admin thoughts

Post by sektor2111 »

ReplaceWith code is intelligent as a worm, a primitive formula addressing 2 things:
- Item from map;
- Item held by Pawn.
And that's all - messing a lot of details.
See, some smarty one forgot Decorations-Content(s), DropWhenKilled, Several Spawners, and... some tweak against 1000 Navigation nodes, adding stuff post pathing - good tweak -> retarded engine deal.
So... in MH2 which I was using I have... 3 types of replacements, 2 of them addressing stuff but taking more problems in account you might look even at NsTDM2 how looks ReplaceWith and some... tweak (of course is place for more tweaking... heh), and the third is addressing Creatures which I did not use it often because I have another toy and I can rewrite a second one getting over stupid AlwaysKeep and "powerful relevant" setup.
First "replacewith" it's addressing at brute replacements weapon vs armor, armor vs other pickup, etc. The second is for clones - some of them looks perfect as original. That one is copying a dumb Scuba into a smarty Scuba preventing abuse from any pawn (A.I. included). If that scuba is green, new stuff is green too. Purpose is to achieve original design to not look stupid, but code improved. Health designed as Christmas presents, all right, replacements are going to be with the same face but with regen related scaling, etc. I called that "ReplaceWithOther" because... it is other but very "sister" of original. Last added code in there was properly cloning ASMD damage if mapper was modifying it, just to see map running with stuff like in original + RespawnTime.
You might understand some day what I was saying with 2014-2016 stuff, some people still don't realize that we need to move to a better UT gaming because we still have resources and we can keep good looking things "untouched" I'm repeating GOOD and THINGS, the rest are Files dumped from Editor having extension UNR.

Introducing tiny explanations for doing a server is much better than a Run-Line which looks exactly like default "ReplaceWith". So to speak in Windoze we can setup proper paths for saving logs according to time of crash etc. That presented one is dumb as shi!t to be honest, has almost nothing useful.
User avatar
sektor2111
Godlike
Posts: 6397
Joined: Sun May 09, 2010 6:15 pm
Location: On the roof.

Re: Admin thoughts

Post by sektor2111 »

Bump with a "story" about Items from Map, and why we need a couple of spots in "Key-Positions" for A.i. and the rest there are not needed into Network - For sure You have to rewrite "ReplaceWith" according to shit "modern times" for UT - a MYTH after all. Why ?
We have an extreme power to lead hunting in a map loading 10 Bots and 1800+ creatures. Is a big ONE ? Yes, no preblem we have 120 Cores at CPU. And now something to wipe your ass with such a "power".
Imagine (I was checking these already) - full A.I. in a map having 949 NavigationPoint/s (A few Inventories only included). We might use 1800 Monsters at time in Level. Ok and ?
And Here is something performed by Monster in AutoState - if you ever heard of a HomeBase term:

Code: Select all

	function SetHome()
	{
		local NavigationPoint aNode;

		aNode = Level.NavigationPointList;

		while ( aNode != None )
		{
			if ( aNode.IsA('HomeBase') && (aNode.tag == tag) )
			{
				home = HomeBase(aNode);
				return;
			}
			aNode = aNode.nextNavigationPoint;
		}
	}
With a very tiny imagination we can figure 1800 Pawns calling NavigationPoint list for getting HomeBase discarding if deserve this check, they just call it.
Ahah, I'm not interested to post the crash about that 10000000 thing, right ?
To not mention if you want to stop their fight somehow giving them a TEAM info, the same result.
Reducing useless Inventory points might be better. Reducing Monsters and firing Factories is also better. Eheh, we can get over at boundary with these iterations (even maybe are twice called LOL).
Perhaps we are saved if Botz mutator might add paths after their "AutoState" else... sweet dreams.

I gotta admit was fascinating to see a bunch of monsters placed around Kill-Zones dying useless - just a map load with no purpose helping iterator to crash.