Documentation

Common Issues

Checks for taking out, placing, powering, and connecting laptops, and for the built-in sites.

#Using the Laptop Item Does Nothing

Check that the item name matches item in shared/unlocked/config.lua and that the item is usable in your inventory through zyke_lib. Players can't take a laptop out while swimming, in a vehicle, dead, downed, or cuffed. Check CanUseLaptop and IsPlayerIncapacitated in the hooks.

#Laptop Loses Its Skin, Files, or Parts

Everything a laptop keeps is in the item's metadata: its serial, OS, parts, plugged devices, skin, and finish. Your inventory has to support item metadata, and the item must not stack. Use the definitions from extras/items/.

#Laptop Cannot Be Put Down

The spot must be within placement.maxDistance and no steeper than placement.maxSlope; the preview turns red where it can't stand. The character may also have reached placement.maxPerCharacter, or the limit of the placement area they stand in. Check CanPlaceLaptop and GetLaptopPlacementArea in the hooks.

#Placed Laptop Went Back Into the Inventory

Laptops stay put down across restarts only in the routing buckets listed in placement.persistentBuckets, {0} by default, or allowed by IsLaptopBucketPersistent. In any other bucket, such as a housing instance, the laptop goes back to the character who put it down once they leave that bucket or after a restart. Add your housing's fixed buckets to the list. See Using the Laptop.

#Laptop Does Not Power On

A laptop without a mainboard does nothing, and one without working memory stays black with its power light blinking. A held laptop needs a charged battery or power bank; put it down to run it on mains, or use /laptop_charge. A cooler missing from its board shows a fan error. See Hardware & Servicing. Set hardware.needsBattery = false to stop held laptops from needing their battery.

#Screen Stops Responding

Run laptop_close in the F8 console. It closes the screen and gives the game back the mouse and keyboard.

#No Internet or Hotspots Missing

Hotspots need the laptop's Wi-Fi card, and unplugged antenna leads cut their range. Secured hotspots need the password from server/unlocked/hotspots.lua; one without a password there can never be joined. Away from hotspots, the laptop tethers to the phone unless wifi.phone.enabled is false or the player lacks wifi.phone.item. Check CanJoinHotspot. See Wi-Fi & Browsing.

#Onion Sites Do Not Open

.onion addresses need the Onion network on every OS, and Veil opens nothing until it is connected. Connect through the OS's connection app; on Facade, Lumen, and Solace it is downloaded from the app store first.

#Another Resource's App Is Missing

With the app store on, registered apps are downloaded from the store unless the resource registered them with preinstalled = true. An app registered for some OSes only doesn't show on the others, and Crowbar shows no registered apps. Registrations are removed when either resource restarts, so the resource has to register again on zyke_laptop:Ready. See Apps & Sites.

#Natter Cannot Be Used

With the app store on, Natter and Shroud are downloaded from the store first. With a phone resource running, players need a phone or SIM with a number. Check CanUseMessenger and messenger.enabled. See Messaging.

#Shop, Shelves, or Laptops on Show Are Missing

The default shop stands inside zyke_digitalden; start it before the laptop, or move the shop's locations, storages, and displays in shared/unlocked/shop.lua. Storages are only offered to players with one of their jobs. Displays exist only within renderDistance. See Shop.

#Digital Den's Doors Are Not Locked

The console warns when neither ox_doorlock nor rcore_doorlock is started. Set up qb-doorlock or cd_doorlock from extras/doorlock/, and give the doors their job in rcore_doorlock's /doors menu. See extras/doorlock/README.md.

#Cast Button or Screen Is Missing

Check cast.enabled. Only apps built for casting show the button. An HDMI screen is only listed with an hdmi_cable plugged into a placed laptop within the cable's reach; a wireless screen only within its wireless range. Check CanCastToScreen. See Casting.

#Casino or Job Board Is Missing

Check casino.enabled and jobs.enabled. Players can only post on Hireline for their current job with one of its boss grades, or a grade in jobs.posting.grades; check CanPostJobListing. See Casino and Job Board.

#Interaction Markers or Target Options Do Not Appear

Check interaction. With "target", ox_target or qb-target must be running and configured in zyke_lib; otherwise, interaction markers are used. With "point", look at the middle of a placed laptop's keyboard from within use.distance, on foot.