What's new in code development
#1
The AC repository is hosted at github: https://github.com/assaultcube/AC

We develop in two main branches, "master" and "next":

master should contain only minor changes and fixes and should be compatible with the latest release version. In general, the master branch is the codebase for minor releases, for example 1.2.0.3.

The lastest commits in master are listed here: https://github.com/assaultcube/AC/commits/master

next contains commits that break compatibility with the current release and can only be released for a new protocol version. From "next" there could be a 1.2.1 or 1.3 release.

The latest commits in next are listed here: https://github.com/assaultcube/AC/commits/next

(From time to time we introduce new branches to develop new major features.)

Github has instructions and tutorials on how to clone the repository. There are also a number of forked repositories hosted on github, where some coders commit their own contributions (for everyone to check out) and also most devs, who may use their forks to prepare and test bigger changes. For example, here's a branch on my fork with some changes to the map file format: https://github.com/ac-stef/AC/commits/mapformat10
Once you've cloned the main repository, it is easy to add forked repositories as remote sources in your local setup. This allows you to keep track of any number of forked versions of AC.

PS: pls only post to this thread to report test results or questions related to code testing. Offtopic posts will be deleted.
Reply
Thanks given by:
#2
Stuff to test in "next" (most of it is in master too, but let's focus on next):

* added console history
* fixed corner physics: throw some nades at (45°-) corners to see the difference https://github.com/assaultcube/AC/commit...ddff27ab2e
* new way to clip areas: tagclips https://github.com/assaultcube/AC/commit...98517d772e
* show list of demos in "Download demo" menu
* lots of fixes and new functions in the map editor: https://github.com/assaultcube/AC/commit...ebd8bb63ae https://github.com/assaultcube/AC/commit...8709ed36c1 https://github.com/assaultcube/AC/commit...76f073e3e5 https://github.com/assaultcube/AC/commit...77e36ada04
* multiple map buffers for map editing: "xmaps" https://github.com/assaultcube/AC/commit...0528c00a6e

(I only listed bigger changes with explanations in the commit message. Pls check the commit log yourself, if you want to read them all.)

If you're unsure, what to test first, I'd recommend either throwing some nades at corners (douze ftw) or testing the xmaps feature. The xmaps feature core is fully implemented, but it's still lacking a menu and a lot of documentation (right now, there's not much more than the commit message). A "diff" feature to compare two xmaps is still unfinished and therefore not committed yet.

Have fun!
Reply
Thanks given by:
#3
Console history: What is this supposed to record, exactly? After all my testing the only thing recorded is "/ctf aqueous", which I entered. Everything's there. I'm not sure if I'm blind and stupid or it only registered after I restarted the game. Probably the former.
Corner physics: Seem much better. Grenades now bounce how you would expect. Threw from different places at different angles and distances and I don't think I got any weird results.
tagclips: Clipping has just become a lot easier. Will there be a way using 0, 1 and 2 as arguments or some sort of shortcut in the future? At the moment I've just made aliases. Also are official maps going to be edited to include these?
Demos: Thank you. This was needed. Seems to work fine.
map editor: Haven't really tried any of these out yet. Will edit when I next get to it.
xmaps: Really useful, makes it much easier to revert changes.

Small fixes: In the clip entity menu, the choice for plclip says "]Player". Minor but still worth fixing. Is the logo going to be made transparent anytime soon?

I might try to do some bug hunting but I've realised I'm not particularly good at it.
Reply
Thanks given by:
#4
The undocumented features with barely a rudimentary interface are usually mine. After I implement a new core feature, I prefer to have it tested first - and maybe get some suggestions about how to design the menu or the user commands. One of the reasons for this thread ;)

Tagclips have been implemented by "misusing" the tag value that every cube of a map has since cube1. This way, the map format didn't have to be changed. Setting it with hex values by 'edittag' is, of course, only a temporary solution. If you have suggestions, how to design the interface, pls create a thread for it, so it can be discussed. Btw: there is a command (transformclipentities), that converts classic clips entities into tag clips, if possible.

Xmaps also lack a menu or even a proper name for the feature. To discuss suggestions, pls create a new thread. Btw: did you notice the little "U" in the lower right corner of the screen? It shows, that there are unsaved edits - and that an xmap will be saved automatically, if you end the game or load a new map without saving the changes first. This prevents you from losing changes, if someone votes for a different map during coopedit, or if you simply forget to save your changes before quitting the game.

edit: since common users can't create threads here, just create them in "General" and I'll move them here.
Reply
Thanks given by:
#5
Console history records all of the "/" commands between game sessions. So if you enter /ctf ac_whatever it will allow you to hit the up arrow to get back to it. Even after you close the game. Its mainly a feature I implemented because I was tired of typing everything out over and over when I was testing new features.
Reply
Thanks given by:
#6
Can you comment on the intended changes for the upcoming version in the header map file format and what's the benefit of it?
Reply
Thanks given by:
#7
more stuff to test in "next" https://github.com/assaultcube/AC/commits/next

* custom description of demos https://github.com/assaultcube/AC/commit...2d2cbc019b
* new script to check all parts of an installation https://github.com/assaultcube/AC/commit...74a2562b0d
* updated SDL and SDL_image - pls check, if you can still compile on your platform
* enable keyrepeat in menus https://github.com/assaultcube/AC/commit...65bab7f38e
* command- and argument-completion backwards https://github.com/assaultcube/AC/commit...1f0c7954f1

and a bunch of cubescript-changes:
* new looplist command https://github.com/assaultcube/AC/commit...b1f9a5268d
* nested alias lookup https://github.com/assaultcube/AC/commit...68cdafa799
* allow symbolic arguments for some commands https://github.com/assaultcube/AC/commit...18ed4df90b
* automatic escaping for strings https://github.com/assaultcube/AC/commit...745bf60a04

Some of the cubescript changes may affect existing scripts, so it would be nice, to get feedback from you.

If you want to read even more code, check out https://github.com/ac-stef/AC/commits/cryptest - where you can find the first building blocks of a new auth system.

Have fun!
Reply
Thanks given by: 1Cap
#8
more stuff to test in "next" https://github.com/assaultcube/AC/commits/next

gameplay:

* fix falling through mapmodels and clips when pushed
* fix flag drop position under water
* fix ladder physics
* tame doublejumps (cap unlimited speed gain, fix crouch glitch)

general:

* improved crosshair management
* sound fixes
* wall clock with local time
* new downloadable package type: zipped mod packages
* faster package download system with option to prioritise servers
* Add searching for map and demo in menu

map features:

* additional text attributes for mapmodels https://github.com/assaultcube/AC/commit/03f974b2bc71be
* automatic embedded map config files https://github.com/assaultcube/AC/commit...d68e5af9b6
* map entity attributes attr5..7, add mapmodel pitch and roll https://github.com/assaultcube/AC/commit...6b22ec2c5a
* higher resolution for waterlevel and entity attributes
* tilted and rotated clip entities
* fix scaled world textures (a.k.a hires textures)
* experimental: allow factors up to 4 for hires textures (will probably be disabled before release)
* experimental: add per-slot mapmodel scale factors

map editor:

* automatic mapmodel menus
* script "mapmodelzoff" to allow negative z-offsets for mapmodels
* create mapmodel slots automatically from the edit menu
* new "Map config operations" menu
* more details for editinfo (just go to edit mode to see)
* add timestamp to map files
* option to show all playerstarts in edit mode
* introduce second edit meta key (LSHIFT)
* add undelete for entities
* include and translate texture slots during copy&paste (copy map parts between files while keeping the textures)
* pin selection of closest entity in map editor https://github.com/assaultcube/AC/commit/107a563e99aea
* texture preview display for menus
* dynamic skymap, texture and sound menus: always contain whatever is available on disk
* show preview of textures during editing

cubescript:

* temporary aliases https://github.com/assaultcube/AC/commit/0f8dbf69aabb
* allow comments inside cubescript lists https://github.com/assaultcube/AC/commit/7b607a6c437ec


Check https://github.com/assaultcube/AC/commits/next to see all changes.

EDIT: the last line of the first post still applies...
Reply
#9
more stuff to test in "next" https://github.com/assaultcube/AC/commits/next

gameplay:

* improve damageindicator (now shows eight directions)
* new ktf flag direction indicator
* fix sliding along corners
* optional high-res player skins (implemented as mod-package)

general:

* HUD fixes
* official maps converted to map format 10 (including countless fixes)
* enable the keyboard settings menu to handle multiple binds
* cleanup new_content map

map features:

* include map license and license-comment in map header
* add per-map overrides to disable graphics features (nowaterreflect|limitwaveheight|nostencilshadows)
* allow custom mapmodels to depend on other custom mapmodels

map editor:

* new keybind to scroll the console by mousewheel
* new commands to sort and deduplicate model-, texture- and sound-slots in map configs
* optionally show ladder entities in edit mode
* new map checks and statistics menu
* add stairs to edit menu
* new menu for edit mode key binds
* allow more edit commands in coop edit (arch, slope, stairs, edittag, edittagclip, selectionrotate, selectionflip, copy, paste, undo, redo and selectionwalk)
* new custom arch prefab editor (including measuring tool to create prefabs from existing maps)
* add todo list for entities
* add batch map conversion tools https://github.com/assaultcube/AC/commit/c5065cddaa4

cubescript:

* pass arguments to and deliver results from script files
* add cubescript commands for binary arithmetic

Check https://github.com/assaultcube/AC/commits/next to see all changes.

(And keep in mind, the last line of the first post still applies...)
Reply
Thanks given by: +f0r3v3r+ , Z3R0 , MPx , SrPER$IAN , Cemer
#10
Are there plans to release 1.2.0.3 with some of the fixes? It seems that `master` branch is pretty inactive...
Reply
Thanks given by: