<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/">
	<channel>
		<title><![CDATA[AssaultCube - Forum - Infrastructure]]></title>
		<link>https://forum.cubers.net/</link>
		<description><![CDATA[AssaultCube - Forum - https://forum.cubers.net]]></description>
		<pubDate>Mon, 18 May 2026 18:24:32 +0000</pubDate>
		<generator>MyBB</generator>
		<item>
			<title><![CDATA[Click to Select [code]]]></title>
			<link>https://forum.cubers.net/thread-9072.html</link>
			<pubDate>Tue, 08 Dec 2020 21:11:54 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.cubers.net/member.php?action=profile&uid=13062">Felix-The-Ghost</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.cubers.net/thread-9072.html</guid>
			<description><![CDATA[QoL suggestion for anyone copying scripts manually in code tags<br />
<br />
On many forums where code is hosted there is a selection button so you don't have to manually scroll to select all the lines within the code.<br />
<br />
I tested and simply right-clicking and doing a browser-based "select all" selects everything on the page, not just in the code<br />
<br />
In my particular use-case I have 200+ lines of code and I'd imagine there's existing cubescript that is also similarly long if not longer<br />
<br />
<div class="codeblock"><div class="title"> <a href="#" onclick="selectCode(this); return false;">[SELECT ALL]</a> Code:</div><div class="body" dir="ltr"><code>docsection [New]<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [scalelight] [Scales nearest/selected light];<br />
<br />
docargument [S] [Size change (percentage)] [] [0];<br />
<br />
docargument [I] [Intensity change (percentage)] [] [0];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [togglelockselent] [toggles isolated selection of an entity, where the entity is selected as the closest entity regardless of any closer entities.];<br />
<br />
docremark [The desired entity must be the closest entity when making selection.];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel] [filters selections(s) to cubes matching at least one of the provided values];<br />
<br />
docargument [T] [Type of filter applied to selection(s)] [] [0];<br />
<br />
docargument [V] [Up to seven values to match, depending on the filter] [] [1];<br />
<br />
docremark [The following filters are supported:];<br />
docremark [];<br />
docremark [Textures:]<br />
docremark [FLOOR_T, WALL_T, UPWALL_T, CEIL_T, where V is the slot number];<br />
docremark [];<br />
docremark [Heights:]<br />
docremark [FLOOR_H, CEIL_H, where V is the height];<br />
docremark [];<br />
docremark [Types:]<br />
docremark [SOLID, HEIGHTFIELD, CORNER, SPACE, where (V &gt; 0) is matching the type, and (V &lt;= 0) excluding the type];<br />
docremark [];<br />
docremark [Functions:]<br />
docremark [DISSOLVE, where V is the percent of cubes to randomly remove from the selection(s)];<br />
docremark [SUBTRACT, where V is the number of selections to subtract from the selection(s)];<br />
docremark [MERGE, where V is unused];<br />
docremark [];<br />
<br />
docexample [filter_sel CEIL_T 0] [selects only cubes in the current selection(s) with the skymap as the ceiling texture];<br />
docexample [] [];<br />
docexample [filter_sel DISSOLVE 80] [removes 80% of the selection(s) randomly];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel FLOOR_T] [filters selections(s) to cubes using one of the provided floor textures];<br />
<br />
docargument [T] [Up to seven texture slots to match] [] [0];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel WALL_T] [filters selections(s) to cubes using one of the provided wall textures];<br />
<br />
docargument [T] [Up to seven texture slots to match] [] [0];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel UPWALL_T] [filters selections(s) to cubes using one of the provided upper wall textures];<br />
<br />
docargument [T] [Up to seven texture slots to match] [] [0];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel CEIL_T] [filters selections(s) to cubes using one of the provided ceiling textures];<br />
<br />
docargument [T] [Up to seven texture slots to match] [] [0];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel FLOOR_H] [filters selections(s) to cubes with one of the provided floor heights];<br />
<br />
docargument [H] [Up to seven heights to match] [] [0];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel CEIL_H] [filters selections(s) to cubes with one of the provided ceiling heights];<br />
<br />
docargument [H] [Up to seven heights to match] [] [0];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel SOLID] [filters selections(s) to cubes that are/aren't solid];<br />
<br />
docargument [V] [valid integer] [] [0];<br />
docremark [V &gt; 0 searches for solids, removing non-solids]<br />
docremark [V &lt;= 0 searches for non-solids, removing solids]<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel HEIGHTFIELD] [filters selections(s) to cubes that are/aren't heightfields];<br />
<br />
docargument [V] [valid integer] [] [0];<br />
docremark [V &gt; 0 searches for heightfields, removing non-heightfields]<br />
docremark [V &lt;= 0 searches for non-heightfields, removing heightfields]<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel CORNER] [filters selections(s) to cubes that are/aren't corners];<br />
<br />
docargument [V] [valid integer] [] [0];<br />
docremark [V &gt; 0 searches for corners, removing non-corners]<br />
docremark [V &lt;= 0 searches for non-corners, removing corners]<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel SPACE] [filters selections(s) to cubes that are/aren't spaces];<br />
<br />
docargument [V] [valid integer] [] [0];<br />
docremark [V &gt; 0 searches for spaces, removing non-spaces]<br />
docremark [V &lt;= 0 searches for non-spaces, removing spaces]<br />
docremark []<br />
docremark ["Space" cubes are cubes not matching any other unique type, e.g. heightfields]<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel DISSOLVE] [Removes P percent of selection(s) randomly];<br />
<br />
docargument [P] [percentage of cubes to remove from selections(s)] [] [0];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel SUBTRACT] [Subtracts the last N selections from all other selections];<br />
<br />
docargument [N] [Number of selections to subtract] [] [0];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel MERGE] [Combines and condenses overlapping selections];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [curtex] [Prints texture slot information of the selected cube, or the cube at X / Y];<br />
docargument [P] [Position of texture to check] [FLOOR, WALL, UPWALL, CEIL, ALL] [0];<br />
docargument [X] [X coordinate of cube to check] [optional] [0];<br />
docargument [Y] [Y coordinate of cube to check] [optional] [0];<br />
docremark [If no coordinate arguments are provided, curtex will list textures(s) for the currently selected cube];<br />
docremark [];<br />
docremark [Note: Without x/y input, curtex works with the top-left cube of the most recent selection]<br />
docexample [curtex WALL] [prints the texture slot used for the wall of the selected cube];<br />
<br />
//--------------------------------------------<br />
<br />
docident [texname] [returns the filename of the selected cube's texture at position P]<br />
docargument [P] [Position of texture to return] [FLOOR, WALL, UPWALL, CEIL] [0];<br />
docexample [echo (texname FLOOR)] [prints the filename of the selected cube's floor texture]<br />
<br />
//--------------------------------------------<br />
<br />
docident [getcurtex] [returns texture slot number of the selected cube, or the cube at X / Y];<br />
docargument [P] [Position of texture to return] [FLOOR, WALL, UPWALL, CEIL, ALL] [0];<br />
docargument [X] [X coordinate of cube to check] [optional] [0];<br />
docargument [Y] [Y coordinate of cube to check] [optional] [0];<br />
docremark [If no coordinate arguments are provided, getcurtex will list textures(s) for the currently selected cube];<br />
docremark [];<br />
docremark [Note: Without x/y input, getcurtex works with the top-left cube of the most recent selection]<br />
docremark [];<br />
docremark [Returns -1 on error];<br />
docexample [getcurtex FLOOR 100 75] [returns the texture slot used for the floor at position 100/75];<br />
<br />
//--------------------------------------------<br />
<br />
docident [curheight] [Prints height information of the selected cube, or the cube at X / Y];<br />
docargument [P] [Position of height to check] [FLOOR, CEIL, BOTH] [0];<br />
docargument [X] [X coordinate of cube to check] [optional] [0];<br />
docargument [Y] [Y coordinate of cube to check] [optional] [0];<br />
docremark [If no coordinate arguments are provided, curheight will list height(s) for the currently selected cube];<br />
docremark [];<br />
docremark [Note: Without x/y input, curheight works with the top-left cube of the most recent selection]<br />
docexample [curheight CEIL] [prints the ceiling height of the selected cube];<br />
<br />
//--------------------------------------------<br />
<br />
docident [getcurheight] [returns the height of the selected cube, or the cube at X / Y];<br />
docargument [P] [Position of height to check] [FLOOR, CEIL] [0];<br />
docargument [X] [X coordinate of cube to check] [optional] [0];<br />
docargument [Y] [Y coordinate of cube to check] [optional] [0];<br />
docremark [If no coordinate arguments are provided, getcurheight will return the height of the currently selected cube];<br />
docremark [];<br />
docremark [Note: Without x/y input, getcurheight works with the top-left cube of the most recent selection]<br />
docremark [];<br />
docremark [Returns -255 on error];<br />
docexample [getcurheight FLOOR 100 75] [returns the floor height at position 100/75];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [undo_sel] [removes last N selection(s) from the list of selections];<br />
docargument [N] [Number of selections to remove] [If no argument provided, a value of 1 is used] [0];<br />
docexample [undo_sel 2] [removes the last two selections made from the list of selections.];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [select_all] [removes all current selections and selects entire map area, including bounding walls];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [equalize_sels] [levels the floor/ceiling of all selections, with the min/max height gathered from all of them];<br />
<br />
docargument [T] [an integer denoting the type] [0 (floor), 2 (ceiling)] [0];<br />
<br />
docremark [This differs from /equalize in that /equalize_sels levels all selections at once, rather than each selection having it's own min/max height]<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [clearrecenttex] [clears the history of recent textures used in the current map];<br />
<br />
//-------------------------------------------------------------------<br />
<br />
docident [cleanedit] [turns on/off clean edit mode];<br />
docargument [V] [0(off)...1(on)] [] [0];<br />
docremark [While editing in clean edit mode, objects/guides not normally visible remain unvisible]<br />
docremark [i.e. The grid guidlines, selection borders, entity sparkles, clips, playerstart arrows, and closest entity information are hidden]<br />
<br />
//-------------------------------------------------------------------<br />
<br />
docident [togglecleanedit] [inverses the on/off state of cleanedit];<br />
<br />
//-------------------------------------------------------------------<br />
<br />
docident [savesel] [Stores the list of current selections to later be recalled by /reselect];<br />
<br />
//-------------------------------------------------------------------<br />
<br />
docident [reselect] [Removes all current selections and selects the list of cubes previously stored with /savesel];<br />
<br />
//-------------------------------------------------------------------<br />
<br />
docident [tex2front] [Brings the selected cube's texture slot used in position P to the front of its recent textures list];<br />
docargument [P] [The position of the cube's texture to bring to front] [FLOOR, WALL, UPWALL, CEIL] [0];<br />
docremark [tex2front works with the top-left cube of the most recent selection]<br />
<br />
//-------------------------------------------------------------------<br />
<br />
docident [paste_half] [Pastes the floor/ceiling of a previously copied selection, leaving the opposite half unmodified];<br />
docremark [The choice of floor or ceiling is derived from which the player is looking at]<br />
<br />
//-------------------------------------------------------------------</code></div></div><br />
I've seen several different options from MyBB so this seems reasonable to do though I confess I'm not personally familiar with MyBB<br />
<br />
<img src="https://i.postimg.cc/8C58Vfcy/ezgif-com-gif-maker.gif" loading="lazy"  alt="[Image: ezgif-com-gif-maker.gif]" class="mycode_img" />]]></description>
			<content:encoded><![CDATA[QoL suggestion for anyone copying scripts manually in code tags<br />
<br />
On many forums where code is hosted there is a selection button so you don't have to manually scroll to select all the lines within the code.<br />
<br />
I tested and simply right-clicking and doing a browser-based "select all" selects everything on the page, not just in the code<br />
<br />
In my particular use-case I have 200+ lines of code and I'd imagine there's existing cubescript that is also similarly long if not longer<br />
<br />
<div class="codeblock"><div class="title"> <a href="#" onclick="selectCode(this); return false;">[SELECT ALL]</a> Code:</div><div class="body" dir="ltr"><code>docsection [New]<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [scalelight] [Scales nearest/selected light];<br />
<br />
docargument [S] [Size change (percentage)] [] [0];<br />
<br />
docargument [I] [Intensity change (percentage)] [] [0];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [togglelockselent] [toggles isolated selection of an entity, where the entity is selected as the closest entity regardless of any closer entities.];<br />
<br />
docremark [The desired entity must be the closest entity when making selection.];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel] [filters selections(s) to cubes matching at least one of the provided values];<br />
<br />
docargument [T] [Type of filter applied to selection(s)] [] [0];<br />
<br />
docargument [V] [Up to seven values to match, depending on the filter] [] [1];<br />
<br />
docremark [The following filters are supported:];<br />
docremark [];<br />
docremark [Textures:]<br />
docremark [FLOOR_T, WALL_T, UPWALL_T, CEIL_T, where V is the slot number];<br />
docremark [];<br />
docremark [Heights:]<br />
docremark [FLOOR_H, CEIL_H, where V is the height];<br />
docremark [];<br />
docremark [Types:]<br />
docremark [SOLID, HEIGHTFIELD, CORNER, SPACE, where (V &gt; 0) is matching the type, and (V &lt;= 0) excluding the type];<br />
docremark [];<br />
docremark [Functions:]<br />
docremark [DISSOLVE, where V is the percent of cubes to randomly remove from the selection(s)];<br />
docremark [SUBTRACT, where V is the number of selections to subtract from the selection(s)];<br />
docremark [MERGE, where V is unused];<br />
docremark [];<br />
<br />
docexample [filter_sel CEIL_T 0] [selects only cubes in the current selection(s) with the skymap as the ceiling texture];<br />
docexample [] [];<br />
docexample [filter_sel DISSOLVE 80] [removes 80% of the selection(s) randomly];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel FLOOR_T] [filters selections(s) to cubes using one of the provided floor textures];<br />
<br />
docargument [T] [Up to seven texture slots to match] [] [0];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel WALL_T] [filters selections(s) to cubes using one of the provided wall textures];<br />
<br />
docargument [T] [Up to seven texture slots to match] [] [0];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel UPWALL_T] [filters selections(s) to cubes using one of the provided upper wall textures];<br />
<br />
docargument [T] [Up to seven texture slots to match] [] [0];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel CEIL_T] [filters selections(s) to cubes using one of the provided ceiling textures];<br />
<br />
docargument [T] [Up to seven texture slots to match] [] [0];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel FLOOR_H] [filters selections(s) to cubes with one of the provided floor heights];<br />
<br />
docargument [H] [Up to seven heights to match] [] [0];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel CEIL_H] [filters selections(s) to cubes with one of the provided ceiling heights];<br />
<br />
docargument [H] [Up to seven heights to match] [] [0];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel SOLID] [filters selections(s) to cubes that are/aren't solid];<br />
<br />
docargument [V] [valid integer] [] [0];<br />
docremark [V &gt; 0 searches for solids, removing non-solids]<br />
docremark [V &lt;= 0 searches for non-solids, removing solids]<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel HEIGHTFIELD] [filters selections(s) to cubes that are/aren't heightfields];<br />
<br />
docargument [V] [valid integer] [] [0];<br />
docremark [V &gt; 0 searches for heightfields, removing non-heightfields]<br />
docremark [V &lt;= 0 searches for non-heightfields, removing heightfields]<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel CORNER] [filters selections(s) to cubes that are/aren't corners];<br />
<br />
docargument [V] [valid integer] [] [0];<br />
docremark [V &gt; 0 searches for corners, removing non-corners]<br />
docremark [V &lt;= 0 searches for non-corners, removing corners]<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel SPACE] [filters selections(s) to cubes that are/aren't spaces];<br />
<br />
docargument [V] [valid integer] [] [0];<br />
docremark [V &gt; 0 searches for spaces, removing non-spaces]<br />
docremark [V &lt;= 0 searches for non-spaces, removing spaces]<br />
docremark []<br />
docremark ["Space" cubes are cubes not matching any other unique type, e.g. heightfields]<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel DISSOLVE] [Removes P percent of selection(s) randomly];<br />
<br />
docargument [P] [percentage of cubes to remove from selections(s)] [] [0];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel SUBTRACT] [Subtracts the last N selections from all other selections];<br />
<br />
docargument [N] [Number of selections to subtract] [] [0];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [filter_sel MERGE] [Combines and condenses overlapping selections];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [curtex] [Prints texture slot information of the selected cube, or the cube at X / Y];<br />
docargument [P] [Position of texture to check] [FLOOR, WALL, UPWALL, CEIL, ALL] [0];<br />
docargument [X] [X coordinate of cube to check] [optional] [0];<br />
docargument [Y] [Y coordinate of cube to check] [optional] [0];<br />
docremark [If no coordinate arguments are provided, curtex will list textures(s) for the currently selected cube];<br />
docremark [];<br />
docremark [Note: Without x/y input, curtex works with the top-left cube of the most recent selection]<br />
docexample [curtex WALL] [prints the texture slot used for the wall of the selected cube];<br />
<br />
//--------------------------------------------<br />
<br />
docident [texname] [returns the filename of the selected cube's texture at position P]<br />
docargument [P] [Position of texture to return] [FLOOR, WALL, UPWALL, CEIL] [0];<br />
docexample [echo (texname FLOOR)] [prints the filename of the selected cube's floor texture]<br />
<br />
//--------------------------------------------<br />
<br />
docident [getcurtex] [returns texture slot number of the selected cube, or the cube at X / Y];<br />
docargument [P] [Position of texture to return] [FLOOR, WALL, UPWALL, CEIL, ALL] [0];<br />
docargument [X] [X coordinate of cube to check] [optional] [0];<br />
docargument [Y] [Y coordinate of cube to check] [optional] [0];<br />
docremark [If no coordinate arguments are provided, getcurtex will list textures(s) for the currently selected cube];<br />
docremark [];<br />
docremark [Note: Without x/y input, getcurtex works with the top-left cube of the most recent selection]<br />
docremark [];<br />
docremark [Returns -1 on error];<br />
docexample [getcurtex FLOOR 100 75] [returns the texture slot used for the floor at position 100/75];<br />
<br />
//--------------------------------------------<br />
<br />
docident [curheight] [Prints height information of the selected cube, or the cube at X / Y];<br />
docargument [P] [Position of height to check] [FLOOR, CEIL, BOTH] [0];<br />
docargument [X] [X coordinate of cube to check] [optional] [0];<br />
docargument [Y] [Y coordinate of cube to check] [optional] [0];<br />
docremark [If no coordinate arguments are provided, curheight will list height(s) for the currently selected cube];<br />
docremark [];<br />
docremark [Note: Without x/y input, curheight works with the top-left cube of the most recent selection]<br />
docexample [curheight CEIL] [prints the ceiling height of the selected cube];<br />
<br />
//--------------------------------------------<br />
<br />
docident [getcurheight] [returns the height of the selected cube, or the cube at X / Y];<br />
docargument [P] [Position of height to check] [FLOOR, CEIL] [0];<br />
docargument [X] [X coordinate of cube to check] [optional] [0];<br />
docargument [Y] [Y coordinate of cube to check] [optional] [0];<br />
docremark [If no coordinate arguments are provided, getcurheight will return the height of the currently selected cube];<br />
docremark [];<br />
docremark [Note: Without x/y input, getcurheight works with the top-left cube of the most recent selection]<br />
docremark [];<br />
docremark [Returns -255 on error];<br />
docexample [getcurheight FLOOR 100 75] [returns the floor height at position 100/75];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [undo_sel] [removes last N selection(s) from the list of selections];<br />
docargument [N] [Number of selections to remove] [If no argument provided, a value of 1 is used] [0];<br />
docexample [undo_sel 2] [removes the last two selections made from the list of selections.];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [select_all] [removes all current selections and selects entire map area, including bounding walls];<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [equalize_sels] [levels the floor/ceiling of all selections, with the min/max height gathered from all of them];<br />
<br />
docargument [T] [an integer denoting the type] [0 (floor), 2 (ceiling)] [0];<br />
<br />
docremark [This differs from /equalize in that /equalize_sels levels all selections at once, rather than each selection having it's own min/max height]<br />
<br />
//----------------------------------------------------------------------------<br />
<br />
docident [clearrecenttex] [clears the history of recent textures used in the current map];<br />
<br />
//-------------------------------------------------------------------<br />
<br />
docident [cleanedit] [turns on/off clean edit mode];<br />
docargument [V] [0(off)...1(on)] [] [0];<br />
docremark [While editing in clean edit mode, objects/guides not normally visible remain unvisible]<br />
docremark [i.e. The grid guidlines, selection borders, entity sparkles, clips, playerstart arrows, and closest entity information are hidden]<br />
<br />
//-------------------------------------------------------------------<br />
<br />
docident [togglecleanedit] [inverses the on/off state of cleanedit];<br />
<br />
//-------------------------------------------------------------------<br />
<br />
docident [savesel] [Stores the list of current selections to later be recalled by /reselect];<br />
<br />
//-------------------------------------------------------------------<br />
<br />
docident [reselect] [Removes all current selections and selects the list of cubes previously stored with /savesel];<br />
<br />
//-------------------------------------------------------------------<br />
<br />
docident [tex2front] [Brings the selected cube's texture slot used in position P to the front of its recent textures list];<br />
docargument [P] [The position of the cube's texture to bring to front] [FLOOR, WALL, UPWALL, CEIL] [0];<br />
docremark [tex2front works with the top-left cube of the most recent selection]<br />
<br />
//-------------------------------------------------------------------<br />
<br />
docident [paste_half] [Pastes the floor/ceiling of a previously copied selection, leaving the opposite half unmodified];<br />
docremark [The choice of floor or ceiling is derived from which the player is looking at]<br />
<br />
//-------------------------------------------------------------------</code></div></div><br />
I've seen several different options from MyBB so this seems reasonable to do though I confess I'm not personally familiar with MyBB<br />
<br />
<img src="https://i.postimg.cc/8C58Vfcy/ezgif-com-gif-maker.gif" loading="lazy"  alt="[Image: ezgif-com-gif-maker.gif]" class="mycode_img" />]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Thread Lock After 90 Days Plugin]]></title>
			<link>https://forum.cubers.net/thread-9070.html</link>
			<pubDate>Thu, 19 Nov 2020 01:31:56 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.cubers.net/member.php?action=profile&uid=13062">Felix-The-Ghost</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.cubers.net/thread-9070.html</guid>
			<description><![CDATA[Or however long the setting is:<br />
<br />
Just a suggestion that given the lower activity in this community "necrobumping" for relevant updates/feedback might not be a bad thing.<br />
<br />
I find myself wanting to comment on user content etc and it's already locked; I imagine this is true for others and similarly inconvenient.]]></description>
			<content:encoded><![CDATA[Or however long the setting is:<br />
<br />
Just a suggestion that given the lower activity in this community "necrobumping" for relevant updates/feedback might not be a bad thing.<br />
<br />
I find myself wanting to comment on user content etc and it's already locked; I imagine this is true for others and similarly inconvenient.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[AC-Akimbo package server and domain]]></title>
			<link>https://forum.cubers.net/thread-8943.html</link>
			<pubDate>Fri, 20 Apr 2018 17:40:35 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.cubers.net/member.php?action=profile&uid=8359">X-Ray_Dog</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.cubers.net/thread-8943.html</guid>
			<description><![CDATA[So far, it looks like the domain has finally expired for ac-akimbo.net. Any package server by default in the Assault Cube client will no longer work in game. I had the last running package server after Akimbo went down. You can still reach the last official server via:<br />
<br />
packages.cubers.net<br />
or<br />
packages.xrd.me<br />
<br />
Please edit your pcksources.cfg file using your favorite txt file editor located in your Assaultcube/config folder to show:<br />
<br />
<div class="codeblock"><div class="title"> <a href="#" onclick="selectCode(this); return false;">[SELECT ALL]</a> Code:</div><div class="body" dir="ltr"><code>// list of package source servers (only add servers you trust!)<br />
<br />
addpckserver packages.cubers.net<br />
addpckserver packages.xrd.me</code></div></div><br />
Also add any other trusted server you'd like to this list but at least add these as well to still get the last official server connected to your client. As well, if anyone has updated packages and can help me get mine updated, please please please PM me, I would like this to work for everyone!]]></description>
			<content:encoded><![CDATA[So far, it looks like the domain has finally expired for ac-akimbo.net. Any package server by default in the Assault Cube client will no longer work in game. I had the last running package server after Akimbo went down. You can still reach the last official server via:<br />
<br />
packages.cubers.net<br />
or<br />
packages.xrd.me<br />
<br />
Please edit your pcksources.cfg file using your favorite txt file editor located in your Assaultcube/config folder to show:<br />
<br />
<div class="codeblock"><div class="title"> <a href="#" onclick="selectCode(this); return false;">[SELECT ALL]</a> Code:</div><div class="body" dir="ltr"><code>// list of package source servers (only add servers you trust!)<br />
<br />
addpckserver packages.cubers.net<br />
addpckserver packages.xrd.me</code></div></div><br />
Also add any other trusted server you'd like to this list but at least add these as well to still get the last official server connected to your client. As well, if anyone has updated packages and can help me get mine updated, please please please PM me, I would like this to work for everyone!]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[A good direction]]></title>
			<link>https://forum.cubers.net/thread-8915.html</link>
			<pubDate>Wed, 07 Feb 2018 02:32:37 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.cubers.net/member.php?action=profile&uid=8212">1Cap</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.cubers.net/thread-8915.html</guid>
			<description><![CDATA[<span style="color: #ffffff;" class="mycode_color">You had it and you destroyed it. A shame. If you could not do it right then you did not have to get into it.</span><br />
<br />
<span style="color: #993333;" class="mycode_color"><img src="https://i.imgur.com/HIYu1dd.png" loading="lazy"  alt="[Image: HIYu1dd.png]" class="mycode_img" /></span><br />
<br />
<span style="color: #ffffff;" class="mycode_color">The king's "friends" have never done a good job ... It's the main reason for the lack of new players ... for sure ...</span>]]></description>
			<content:encoded><![CDATA[<span style="color: #ffffff;" class="mycode_color">You had it and you destroyed it. A shame. If you could not do it right then you did not have to get into it.</span><br />
<br />
<span style="color: #993333;" class="mycode_color"><img src="https://i.imgur.com/HIYu1dd.png" loading="lazy"  alt="[Image: HIYu1dd.png]" class="mycode_img" /></span><br />
<br />
<span style="color: #ffffff;" class="mycode_color">The king's "friends" have never done a good job ... It's the main reason for the lack of new players ... for sure ...</span>]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[New Forum Platform]]></title>
			<link>https://forum.cubers.net/thread-8864.html</link>
			<pubDate>Thu, 29 Jun 2017 12:21:13 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.cubers.net/member.php?action=profile&uid=16596">Harps</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.cubers.net/thread-8864.html</guid>
			<description><![CDATA[<div style="text-align: center;" class="mycode_align"> I would like to start by saying thanks to X-Ray Dog for hosting the forum and that you can donate to the Assault Cube project. Donations contribute to the costs of hosting the Master Server, Website and Forum. </div>
<br />
<div style="text-align: center;" class="mycode_align"> <a href="http://sourceforge.net/p/actiongame/donate/" target="_blank" rel="noopener" class="mycode_url">http://sourceforge.net/p/actiongame/donate/</a></div>
<br />
<br />
In my opinion I think it is time to change Forum platform. There are a whole host of free usability benefits that are useful, including but not limited to:<ul class="mycode_list"><li>Infinite / load-on-demand scrolling<br />
</li>
<li>Actually being usable on mobile devices. At the moment MyBB is less than pleasant.<br />
</li>
<li>Better composers<br />
</li>
<li>Far superior notification systems<br />
</li>
</ul>
I think that with a new version approaching and it being 7 whole years since our last platform upgrade, the time is now. Free, open source forum software has come leaps and bounds in the past few years. <br />
<br />
Take a look at:<ul class="mycode_list"><li><span style="font-weight: bold;" class="mycode_b">Discourse</span> <a href="http://www.discourse.org/" target="_blank" rel="noopener" class="mycode_url">http://www.discourse.org/</a><br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Flarum </span> <a href="http://flarum.org/" target="_blank" rel="noopener" class="mycode_url">http://flarum.org/</a><br />
</li>
</ul>
<br />
What do you say, X-Ray_Dog?]]></description>
			<content:encoded><![CDATA[<div style="text-align: center;" class="mycode_align"> I would like to start by saying thanks to X-Ray Dog for hosting the forum and that you can donate to the Assault Cube project. Donations contribute to the costs of hosting the Master Server, Website and Forum. </div>
<br />
<div style="text-align: center;" class="mycode_align"> <a href="http://sourceforge.net/p/actiongame/donate/" target="_blank" rel="noopener" class="mycode_url">http://sourceforge.net/p/actiongame/donate/</a></div>
<br />
<br />
In my opinion I think it is time to change Forum platform. There are a whole host of free usability benefits that are useful, including but not limited to:<ul class="mycode_list"><li>Infinite / load-on-demand scrolling<br />
</li>
<li>Actually being usable on mobile devices. At the moment MyBB is less than pleasant.<br />
</li>
<li>Better composers<br />
</li>
<li>Far superior notification systems<br />
</li>
</ul>
I think that with a new version approaching and it being 7 whole years since our last platform upgrade, the time is now. Free, open source forum software has come leaps and bounds in the past few years. <br />
<br />
Take a look at:<ul class="mycode_list"><li><span style="font-weight: bold;" class="mycode_b">Discourse</span> <a href="http://www.discourse.org/" target="_blank" rel="noopener" class="mycode_url">http://www.discourse.org/</a><br />
</li>
<li><span style="font-weight: bold;" class="mycode_b">Flarum </span> <a href="http://flarum.org/" target="_blank" rel="noopener" class="mycode_url">http://flarum.org/</a><br />
</li>
</ul>
<br />
What do you say, X-Ray_Dog?]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[I need my account deleted]]></title>
			<link>https://forum.cubers.net/thread-8830.html</link>
			<pubDate>Thu, 02 Mar 2017 00:38:27 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.cubers.net/member.php?action=profile&uid=0">JonathanRMH</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.cubers.net/thread-8830.html</guid>
			<description><![CDATA[I have to wipe every trace of me from the internet and I need this account deleted because it contains my real name. Is there anything I can do? Or the mods?]]></description>
			<content:encoded><![CDATA[I have to wipe every trace of me from the internet and I need this account deleted because it contains my real name. Is there anything I can do? Or the mods?]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Can't access ac-akimbo.net]]></title>
			<link>https://forum.cubers.net/thread-8768.html</link>
			<pubDate>Thu, 06 Oct 2016 13:30:24 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.cubers.net/member.php?action=profile&uid=274">Viper</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.cubers.net/thread-8768.html</guid>
			<description><![CDATA[There are some old skins I want to download but the site seems to be down. Why is that?]]></description>
			<content:encoded><![CDATA[There are some old skins I want to download but the site seems to be down. Why is that?]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[rendering bug]]></title>
			<link>https://forum.cubers.net/thread-8614.html</link>
			<pubDate>Sat, 09 Jan 2016 14:46:59 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.cubers.net/member.php?action=profile&uid=98">Elite</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.cubers.net/thread-8614.html</guid>
			<description><![CDATA[I have encountered today a bug on the match client. As you can see on the screen below (left behind the scoreboard),<br />
a virtual wall appeared in front of me. This happened on several spots, but totally random.<br />
<br />
<img src="http://i67.tinypic.com/28mgtmv.jpg" loading="lazy"  alt="[Image: 28mgtmv.jpg]" class="mycode_img" />]]></description>
			<content:encoded><![CDATA[I have encountered today a bug on the match client. As you can see on the screen below (left behind the scoreboard),<br />
a virtual wall appeared in front of me. This happened on several spots, but totally random.<br />
<br />
<img src="http://i67.tinypic.com/28mgtmv.jpg" loading="lazy"  alt="[Image: 28mgtmv.jpg]" class="mycode_img" />]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[AC Radio - Back from the Grave]]></title>
			<link>https://forum.cubers.net/thread-8525.html</link>
			<pubDate>Wed, 26 Aug 2015 06:45:38 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.cubers.net/member.php?action=profile&uid=120">MorganKell</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.cubers.net/thread-8525.html</guid>
			<description><![CDATA[Welcome.]]></description>
			<content:encoded><![CDATA[Welcome.]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[/!\ Beware sourceforge]]></title>
			<link>https://forum.cubers.net/thread-8512.html</link>
			<pubDate>Tue, 11 Aug 2015 11:22:43 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.cubers.net/member.php?action=profile&uid=17187">damien</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.cubers.net/thread-8512.html</guid>
			<description><![CDATA[Since Sourceforge is now considered corrupted (see articles on the internet), I suggest we :<br />
- either leave them (but given the size of ac that could mean bandwidth problem, so I understand if we don't)<br />
- either put the SHA 512 checksum (<a href="https://en.wikipedia.org/wiki/Cryptographic_hash_function#Verifying_the_integrity_of_files_or_messages" target="_blank" rel="noopener" class="mycode_url">https://en.wikipedia.org/wiki/Cryptograp...r_messages</a>)  of the file in the download section<br />
<br />
Second option seems the best. It's easy and would avoid the temptation of sourceforce putting some malicious code into the game archives.<br />
<br />
<br />
Problems I see :<br />
- are checksums easily accessible in windows (I use Unix and I have no idea) ?<br />
- must not forget to update the checksum with the game version available for ddl (although that can certainly be automated)]]></description>
			<content:encoded><![CDATA[Since Sourceforge is now considered corrupted (see articles on the internet), I suggest we :<br />
- either leave them (but given the size of ac that could mean bandwidth problem, so I understand if we don't)<br />
- either put the SHA 512 checksum (<a href="https://en.wikipedia.org/wiki/Cryptographic_hash_function#Verifying_the_integrity_of_files_or_messages" target="_blank" rel="noopener" class="mycode_url">https://en.wikipedia.org/wiki/Cryptograp...r_messages</a>)  of the file in the download section<br />
<br />
Second option seems the best. It's easy and would avoid the temptation of sourceforce putting some malicious code into the game archives.<br />
<br />
<br />
Problems I see :<br />
- are checksums easily accessible in windows (I use Unix and I have no idea) ?<br />
- must not forget to update the checksum with the game version available for ddl (although that can certainly be automated)]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Why is AssaultCube AntiCheat still not open source?]]></title>
			<link>https://forum.cubers.net/thread-8481.html</link>
			<pubDate>Fri, 31 Jul 2015 13:50:12 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.cubers.net/member.php?action=profile&uid=16569">Mash</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.cubers.net/thread-8481.html</guid>
			<description><![CDATA[Last time I asked a dev this question he told me that it's so cheaters can't code around it. But seriously how hard is it to cheat in AC? Easy as ....<br />
<br />
From the AC source:<br />
<blockquote class="mycode_quote"><cite>Quote:</cite>/**<br />
If you read README.txt you must know that AC does not have cheat protection implemented.<br />
However this file is the sketch to a very special kind of cheat detection tools in server side.<br />
This is not based in program tricks, i.e., encryption, secret bytes, nor monitoring/scanning tools.<br />
The idea behind these cheat detections is to check (or reproduce) the client data, and verify if<br />
this data is expected or possible. Also, there is no need to check all clients all time, and<br />
one coding this kind of check must pay a special attention to the lag effect and how it can<br />
affect the data observed. This is not a trivial task, and probably it is the main reason why<br />
such tools were never implemented.<br />
This part is here for compatibility purposes.<br />
If you know nothing about these detections, please, just ignore it.<br />
*/</blockquote>
So the anticheat is no offical part of AssaultCube. Fine! Why is it compiled into the released versions then? But that's not the question. The question is why is it not open source? Why are we not allowed check what the thing is doing? Why it sometimes bans not modified clients for speedhack? Why are we not allowed to check how much computing time each task in it uses and decide as server hosters on our own what parts we want to include and what parts we want to leave out to protect our players from lag. (At the moment we're forced to host without anticheat protection because we have to recompile)<br />
Why is this still closed source after so many years and even kept in secret from the community when there's no active dev around anymore?]]></description>
			<content:encoded><![CDATA[Last time I asked a dev this question he told me that it's so cheaters can't code around it. But seriously how hard is it to cheat in AC? Easy as ....<br />
<br />
From the AC source:<br />
<blockquote class="mycode_quote"><cite>Quote:</cite>/**<br />
If you read README.txt you must know that AC does not have cheat protection implemented.<br />
However this file is the sketch to a very special kind of cheat detection tools in server side.<br />
This is not based in program tricks, i.e., encryption, secret bytes, nor monitoring/scanning tools.<br />
The idea behind these cheat detections is to check (or reproduce) the client data, and verify if<br />
this data is expected or possible. Also, there is no need to check all clients all time, and<br />
one coding this kind of check must pay a special attention to the lag effect and how it can<br />
affect the data observed. This is not a trivial task, and probably it is the main reason why<br />
such tools were never implemented.<br />
This part is here for compatibility purposes.<br />
If you know nothing about these detections, please, just ignore it.<br />
*/</blockquote>
So the anticheat is no offical part of AssaultCube. Fine! Why is it compiled into the released versions then? But that's not the question. The question is why is it not open source? Why are we not allowed check what the thing is doing? Why it sometimes bans not modified clients for speedhack? Why are we not allowed to check how much computing time each task in it uses and decide as server hosters on our own what parts we want to include and what parts we want to leave out to protect our players from lag. (At the moment we're forced to host without anticheat protection because we have to recompile)<br />
Why is this still closed source after so many years and even kept in secret from the community when there's no active dev around anymore?]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[bug]]></title>
			<link>https://forum.cubers.net/thread-8174.html</link>
			<pubDate>Wed, 25 Mar 2015 18:21:51 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.cubers.net/member.php?action=profile&uid=10803">Marti</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.cubers.net/thread-8174.html</guid>
			<description><![CDATA[so i was wondering, why is this still possible?<br />
ALERT: i'd recommend lowering your volume, sound is odd..<br />
<iframe width="560" height="315" src="//www.youtube-nocookie.com/embed/j4ZVp_K3EN8" frameborder="0" allowfullscreen="true"></iframe><br />
<br />
edit: didnt know in which topic to put so i just put it here]]></description>
			<content:encoded><![CDATA[so i was wondering, why is this still possible?<br />
ALERT: i'd recommend lowering your volume, sound is odd..<br />
<iframe width="560" height="315" src="//www.youtube-nocookie.com/embed/j4ZVp_K3EN8" frameborder="0" allowfullscreen="true"></iframe><br />
<br />
edit: didnt know in which topic to put so i just put it here]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[akimbo forum]]></title>
			<link>https://forum.cubers.net/thread-8153.html</link>
			<pubDate>Mon, 16 Mar 2015 16:40:56 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.cubers.net/member.php?action=profile&uid=13974">|AOD|Misa</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.cubers.net/thread-8153.html</guid>
			<description><![CDATA[Hello world!<br />
<br />
I Have a problem with the akimbo forum because the registration is failed. When i register, i must put a image code but the captcha code is missing! Please help me!]]></description>
			<content:encoded><![CDATA[Hello world!<br />
<br />
I Have a problem with the akimbo forum because the registration is failed. When i register, i must put a image code but the captcha code is missing! Please help me!]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[Please find better spinner]]></title>
			<link>https://forum.cubers.net/thread-8150.html</link>
			<pubDate>Sun, 15 Mar 2015 17:12:49 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.cubers.net/member.php?action=profile&uid=150">DeafieGamer</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.cubers.net/thread-8150.html</guid>
			<description><![CDATA[This spinner:<br />
<img src="http://forum.cubers.net/images/AssaultCube_myBBv1.8.3//spinner.gif" loading="lazy"  alt="[Image: spinner.gif]" class="mycode_img" /> is really bad on this background.<br />
<br />
I cannot seem to find good spinner that shows well on AssaultCube Forums.<br />
<br />
Do anyone have good idea?]]></description>
			<content:encoded><![CDATA[This spinner:<br />
<img src="http://forum.cubers.net/images/AssaultCube_myBBv1.8.3//spinner.gif" loading="lazy"  alt="[Image: spinner.gif]" class="mycode_img" /> is really bad on this background.<br />
<br />
I cannot seem to find good spinner that shows well on AssaultCube Forums.<br />
<br />
Do anyone have good idea?]]></content:encoded>
		</item>
		<item>
			<title><![CDATA[AC Radio]]></title>
			<link>https://forum.cubers.net/thread-7972.html</link>
			<pubDate>Fri, 19 Dec 2014 07:34:19 +0000</pubDate>
			<dc:creator><![CDATA[<a href="https://forum.cubers.net/member.php?action=profile&uid=120">MorganKell</a>]]></dc:creator>
			<guid isPermaLink="false">https://forum.cubers.net/thread-7972.html</guid>
			<description><![CDATA[Who here actually wants to KNOW what it's like to play AC?]]></description>
			<content:encoded><![CDATA[Who here actually wants to KNOW what it's like to play AC?]]></content:encoded>
		</item>
	</channel>
</rss>