ID:2335608
 
(See the best response by Lummox JR.)
Problem description: Hello, I'm haveing problem with screen loc, while I can see whole HUD objs, my friend cant, I use the
screen_loc="TOP-6,LEFT"
but it looks that has no diference
-He have a screen of 2560x1600 and I'm 1920x1080, I just saw it then I was looking at the pictures.

Imgur.com

Imgur.com
We would have to see more of the code in question in order to diagnose the problem. The most common thing that would keep it from showing would be forgetting to add it to the screen list: client.screen.Add(screen_object)
Another problem might be if it's getting deleted somewhere.

You can rule out both with some quick diagnostic messages by checking:
if(!screen_object) world << "It doesn't exist"
if(!(screen_object in client.screen)) << "It's not in the screen list"
In response to IainPeregrine
mob/proc
Buildhud()
client.screen += new /obj/hud/MAIN/Circle()
client.screen += new /obj/hud/MAIN/WholeHud()


that's how I add it to the screen, like I tried to check if its getting deleted somewhere but nothing appears
Edit: Having up to date knowledge of the language is important, too. See LummoxJR's post below.

You'll need to do some debugging to figure out what section of the code is causing the problem - and what the problem really is. There are several things that could cause a screen object to not display (deleted, never added to screen, no screen_loc) and right now we don't know which it is.

When in doubt, start using "world << whatever" to find out what's going on. For instance, you could add the following line to that BuildHud() proc:
world << "Building Hud"

If that message never appears, then you know the hud isn't being added to client.screen. Or, you could add this test verb:
mob
var
obj/hud/MAIN/Circle/hudTestCircle
obj/hud/MAIN/WholeHud/hudTestWhole
proc/BuildHud()
world << "Building Hud"
hudTestCircle = new()
hudTestWhole = new()
client.screen += hudTestCircle
client.screen += hudTestWhole

client/verb/testHud()
if(!mob.hudTestCircle || !mob.hudTestWhole)
// If there's no Circle or there's no WholeHud
world << "Hud Problem: Something got deleted somewhere"
else
world << "No Hud Problem: Hud objects Exist"


Have the person experiencing the error log in, and make sure you see "Building Hud". Then have them run that verb. If they see "Hud Problem" then you know the hud got deleted. If they see "No Hud Problem" then you know the problem is something else.

Debugging is a process of narrowing down what the problem could be by eliminating possibilities. That's why there's procs like ASSERT(x) which crashes if x is falsy.
Best response
Czoaf, is your friend actually using the beta version or is he using 511? The screen_loc you're using is a 512 feature.
In response to Lummox JR
yes he was not