- Modular computers now support multitasking.
- New hardware type added. Basic CPUs may be obtained when purchasing a laptop or tablet, Photonic CPUs can be printed at research at imprinter. This hardware piece determines how many programs can be on background.
- Programs can now have an icon that is rendered in main UI's header (along with the power icons, etc.) when the program is on background. As an example, these icons have been added to NTNRC client (Dark icon when no messages have been received, blinking when new message is waiting), Alarm monitor (Blinking red when an alarm is active, green otherwise) and downloader program (Animated arrow when downloading, stationary when finished.)
- Adds missing crew monitor icon to tablets. Fixes#11937
- Ghosts can interact with modular computers by clicking them now. This carries normal restrictions as other NanoUIs operated by ghosts - they may not click any buttons, etc.
- Admin-ghosts can now fully use modular computers when ghosted. When the computer is turned off, they get a prompt on click whether they want to admin-enable it or not.
- Fixes#11874
- Maps in bunch of modular consoles, mostly replacing old consoles with them. I've replaced them with relevant department presets.
- Engineering control room merged with Atmospherics control room, under single area.
- Fixes possible qdel() issue with console's/laptop's processor object.
- Removes Karolis's console preset, as it is now part of Command console preset under different typepath.
- Fixes a runtime error when an ID Card slot is Destroy()-ed
- Adds few presets for consoles, such as, engineering console, command console, etc.
- Adds tablet and cheap tablet as loadout preferences with cost of 4 and 3 points respectively. Cheap tablet contains only worst battery, hard drive and network card, regular tablet has average components.
- Makes use of emag_act() to enable emagging of modular computers.
- Programs are now properly informed every tick to see whether the computer is emagged or not.
- As of now, the only program that acts differently is software downloader that allows downloads of malicious programs.
- Adds codersprites for tablet programs that are currently required.
- Adds computer icons to some programs that missed them.
- Temporarily removes separate keyboard icon states for consoles. They may be reimplemented in the future in a bit better way.
- Rebalanced sizes of programs a bit
- File manager is no longer downloadable, as it is part of each hard drive's ROM.
- Fixed runtime error when vending a laptop
- Adjusted some code segments as per Techhead's suggestions on github
- Adds changelog.
- Adds revelation virus, a program that destroys the hard drive on execution. It also has chance of destroying the computer's power supply and/or battery.
- (Added): Simple UI for virus that allows user to rename the program to look like non-malicious one. The virus must be armed first via this UI. Once armed, it will trigger on next execution (even if copied/sent to other system)
- Adds extended description to programs, that contains basic information on what the program is doing.
- Adds simple NTNet P2P transfer client, that allows users to send files via NTNet.
- This client can act either as actual client (downloading files), or as a server, providing one file at time.
- This may (not guaranteed) be expanded in future, to allow sharing of multiple files at once, possibly even having some sort of dedicated server architecture
- Transfer speed is calculated as lower value of connection speed of both devices (weakest link in the chain)
- Server may be protected using rudimentary password that, if set, must be entered to download the file.
- Hardware pieces are now items, rather than datums.
- Adds deconstruction for computers. Empty tablet/laptop/console frames may be wrenched to break them back into metal sheets. You have to empty the frame first, by using screwdriver to take out components one by one.
- Components may be moved between devices. You can for example take your tablet, remove it's hard drive, and slot it into a console. It will have all the files it had on your tablet.
- Not all hardware can be fitted into all devices. Tablet can't hold 2K GQ cluster hard drive, for example.
- Hardware may be fabricated by research for relatively low costs, once you have relevant research levels. Obtaining computer this way is much cheaper than buying it at the vendor.
- Data crystals added (glorified USB flash sticks) that allow file transfer to different devices. File browser program updated accordingly to support importing/exporting of files to these crystals.
- Battery module added. These are wrappers for actual power cell object and act as limit for cell size, otherwise it would be possible to have 30k cells inside devices, which would allow them to run insanely long.
- Adds new "File manager" program, that allows you to work with files stored on your device's hard drive.
- File manager can be used to delete/rename/view files. Some files can't be viewed (executable programs), some can be (data files)
- If your device contains NanoPrinter hardware you may print data files.
- You can edit the text files using simplified paper code.
- Adds new program, NTNet monitoring tool. It allows the user to view logs and perform various administrative tasks.
- The program is currently without access restriction. This will be added in future update, possibly when (if?) i add IT technician.
- This program may be used to disable specific functions of NTNet, or shut it down entirely.
- As usual, fixes various issues through the code, but likely creates more as this is still WIP project.
- Most importantly, NTNet software downloader program now exists and more or less works.
- Your device's connectivity has effect on how quickly you can download. Right now, things with wired connection (consoles) download at 0,5GQ/s, mobile devices on station where signal is good at 0,1GQ/s and mobile devices off station where signal is bad are limited to 0,025GQ/s. This is all controlled by three defines.
- This somewhat reduces copy-paste of code between item and machinery types. Machinery type still needs some code, but it's been reduced to absolute minimum.
- Adds a computer configuration utility program, that is pre-installed on each computer. This program shows detailed component information and offers component toggling possibility.
- Bandaid fix for NanoUI runtimes which seem to be caused by nanoUIs sometimes being somehow opened on null object. Such UI is force-deleted if this happens.
- Programs now have properly defined usage_flags (Note to self: AND is not OR!)
- Minor visual adjustment to buttons in UIs.
- Renames some files, tidies up some of the code
- Adds forceMove() and Topic() sanity checks from github suggestions
- Properly implements tablets, usage flags and portable devices in general. For now, adds codersprites (final release will have actual sprites)
- Fixes some bugs
- Assigns file sizes to programs
- Lays out structure for item-based modular computers (Tablets)
- Changes how icons for modular computers will be handled.
- NTNet adjustments
- Few fixes
- Small adjustments to NTNet behaviour.
- Adds "undeletable" and "unmovable" flags for computer files. Intended to use for ROM-style programs that are necessary for PC to work.
- Programs now know NTNet status and can act differently depending on this.
- Overall improvements of code, fixes, etc.
- Adds NTNet and NTNet relays. They currently miss deconstruction/construction but that's planned for later.
- Adds few more programs (still preinstalled in the laptop, for debugging)
- Successfully gets rid of copypaste formerly needed in templates. Now the header is in default template itself. This seems to be least problematic solution without making change to nanoui's code itself.
- Implements modular computers, starting with single program (power monitoring console)
- Implements most hardware. Some is still TBD, but the important stuff is in place
- Implements file-based system. Currently two file types exist, programs, which have NanoUI/Topic() interaction with user and data files, which may be used to store string of data.