BYOND 4.0 Version 443.1021 Release Notes
Fixes (more info)
- call(library,...) was not working in certain cases when the library was passed in through a variable. (Stephen001)
- Passing a port value of 0 to the startup() proc was not using a random available port, as documented. Instead, it was using the last saved port. (Nadrew)
- Panes within child elements could inappropriately be made visible regardless of the child control's is-visible setting.
- Destroying a runtime-created child control while it held panes would destroy the panes as well, causing DreamSeeker to misbehave. (Jeff8500)
- Graphical glitches were occuring when client.view was set larger than the map size. Now, the client.view var will be unaffected by any map changes (which is important lest games that use dynamic maps cease to work), but any client.view larger than the available map size will be interpreted as no bigger than the map. (Alathon)
- Controls placed inside child windows were sometimes scrollable when they shouldn't have been. (Metamorphman)
- If a window was maximized via winset(...,"is-maximized=true") it could not be minimzed via winset(...,"is-minimized=true"). (Quaddw)
- The isicon() function was returning true for anything with a valid icon extension; now it properly checks the file for the proper icon format. (Falacy)
- In certain cases, objects in client.screen were not properly drawn or cleared. (Falacy, SilkWizard)
- Large client.pixel_[xy] values were causing drawing errors. The client will now use 2-byte pixel offsets internally so that large (but still valid) offsets will not be impacted by gliding, or by cases like an overlay with a pixel offset being tacked to an obj with a pixel offset. Note: The valid range of individual pixel_x/y values is still -128 to +127. (Inuyashaisbest)
- When sending multi-line output to an output control, the control was adding a line-break to the beginning of every line if the first line began with a space. (Keeth)
- Sending invalid html (specifically closure of nonexistent tags) to the output control was causing unexpected formatting. It now simply ignores the invalid html. (Keeth)
- Dantom.DB was not properly returning column data information for all installations. (Keeth)
- Images with transparency weren't being properly drawn onto certain interface controls (such as buttons & labels). These are now properly blended with the background of the control at the time of placement (this works for both full & partial transparency). (Andre-g1)
- In certain cases, multiple macros that shared the same key (eg, T, SHIFT+T) wouldn't work properly. (Falacy)
- Using a macro to call .command caused a subsequent press of the macro key to fail silently. (Lummox JR)
- If a down-key macro created a new window, the corresponding up-key macro was run on the new window instead of the original. Up-key macros are now always sent to the same window that had the down-key event. (Fugsnarf)
- In DreamMaker, map data could sometimes be lost when switching between files. (Aaiko, Satans Spawn)
- Deleting or editing an object in DreamMaker's map editor wasn't always selecting the correct one, if there were multiple instances of that object on the same tile. (Android Data)
- In DreamMaker, attempting to delete a locked file was silently failing. (Airjoe)
- DreamMaker's interface/skin editor wasn't always displaying the proper tab order in the "control" menu. To be more consistent with other applications, the order has also been reversed (so the 1st item in the tab order is now displayed first). This has no effect on existing projects, as the storage format is unchanged. (Falacy, DarkCampainger)
- DreamMaker's interface/skin editor was failing to update the background color for grid controls. (Haywire)
- The compiler was getting corrupted (spitting out spurious error counts) when importing graphics with many frames. (Gakumerasera)
- A bug in 441-442 was failing to show most status messages during pager login, including indications of login failure.
- The pager was adding extra newlines to pages. (Tiberath)
- The pager wasn't properly "coming to the top" in certain switching sitatuions. (Alathon)
- The pager was sometimes announcing the incorrect host for a game. (Ripper man5)
- The pager was granting access to DreamSeeker's Options & Messages window, even when client.control_freak (designed to prevent user UI intervention) was set to true. This was due to the need to be able to shutdown a rogue DS instance that would not otherwise close. Now the pager has a separate option to shutdown a world directly without ever opening O&M, and worlds that use client.control_freak can notify the pager that their O&M panel should not be activated. (Falacy)
- BYOND's uninstaller wasn't alerting the user when they did not have proper permissions. (Android Data)
Features
- world/IsBanned() now has a third argument which is the computer_id. Consult the reference for usage. (Oasho)
- GetScores() can now get a list of the top N players in a game. Consult the reference for usage.
- Games that use external DLLs via call("lib","func") now set a special flag in the DMB. Upon launching of the game in DS or DD, the user will be prompted to approve the game. If accepted, the DLLs will execute without the usual -trusted user prompt (this setting will carry over to subsequent runs). If denied, the game will close. (Kuraudo)
.
- DreamMaker's movie editor now supports more frames.
- In DreamMaker's movie editor, two new options are available for editing delays:
- Set this delay as the default
- Set all existing delays to this value
442 Release Notes | View All