For direct access use https://forums.oldunreal.com
It's been quite a while since oldunreal had an overhaul, but we are moving to another server which require some updates and changes. The biggest change is the migration of our old reliable YaBB forum to phpBB. This system expects you to login with your username and old password known from YaBB.
If you experience any problems there is also the usual "password forgotten" function. Don't forget to clear your browser cache!
If you have any further concerns feel free to contact me: Smirftsch@oldunreal.com

Inventories outside ServerPackages

The section related to UnrealScript and modding. This board is for coders to discuss and exchange experiences or ask questions.
User avatar
Chaos13
OldUnreal Member
Posts: 951
Joined: Sat Feb 16, 2008 10:24 am

Inventories outside ServerPackages

Post by Chaos13 »

Is there ANY way to check if the inventory passed in AddInventory is actually inside server packages? And is there any way to check if any actor is inside server pacakges? I want to somehow fix "non-sp inventory messed up" bug by rejecting non-serverpackage items if it is not standalone or reject just items which are fked up (not in server packages, anyway fd up !).
Skydev = Chaos13 = Dimension4
User avatar
Chaos13
OldUnreal Member
Posts: 951
Joined: Sat Feb 16, 2008 10:24 am

Re: Inventories outside ServerPackages

Post by Chaos13 »

By the way i researched that summons outside serverpackages on server should be restricted because
Inventory chain can be broken
Pawn chain can be broken (!!!)
Maybe ACTOR chain can be broken (AllActors wont work)
Skydev = Chaos13 = Dimension4
User avatar
TCP_Wolf
Administrator
Posts: 1078
Joined: Sun Mar 03, 2002 12:04 pm

Re: Inventories outside ServerPackages

Post by TCP_Wolf »

You can get the serverpackages via UScript with a console command:
get gameengine ServerPackages

The result is a string which you need to parse.
Example result in 226b (Delimeter is comma):
Female1skins,Female2skins,Male1skins,Male2skins,Male3skins,SkTrooperskins,UPak

227 result strings are slightly different (Delimeter is quote-comma-quote):
"Female1skins","Female2skins","Male1skins","Male2skins","Male3skins","SkTrooperskins","UnrealIntegrity227"

There also is a way to print out PACKAGE.ITEM for an Actor (just forgot how exactly right now), but when you have that, strip the item name and the dot and compare to your parsed list of Server Packages...

EDIT: You might actually get the idea to just keep the first result string and do a String index lookup of your package name into it (as in "does my non-parsed package list CONTAIN my item package name). This is possible but unreliable should you use several packages that have similar names. Full parsing is notably more effort but the safe way. To avoid CAPITAL/small letter problems with the comparison, you might CAPS(..) both parts or use ~= ...
Last edited by TCP_Wolf on Thu Mar 20, 2008 4:06 pm, edited 1 time in total.
-=]HONESTY PAYS[=-
User avatar
Chaos13
OldUnreal Member
Posts: 951
Joined: Sat Feb 16, 2008 10:24 am

Re: Inventories outside ServerPackages

Post by Chaos13 »

ty alot, wolf, i think that i can just use , delimiter for parsing and remove first and then do ReplaceStr(P,"""",""); to remove that pos if its not in serverpackages. Thanks again alot (now i know what result of getting dynamic array looks like) and btw: Left(String(A.Class),InStr(String(A.Class),".")) will return package of actor A. (or maybe not "" but \")
Last edited by Chaos13 on Sun Mar 23, 2008 6:56 pm, edited 1 time in total.
Skydev = Chaos13 = Dimension4

Return to “UScript Board”