--- openbve-1.2.5.2.orig/debian/releasenotes.html +++ openbve-1.2.5.2/debian/releasenotes.html @@ -0,0 +1,70 @@ + + + + + + + +Release notes + + + + + + + + + + +
Logo +AboutScreenshotsUsingDevelopingBlogForumDownload +
+
+ + + + +
+
+Release notes (version 1.2)  +
+

+
+ + + +
Date2009-07-26

+It has been 18 weeks since the release of version 1.0, and now, version 1.2 provides the next major update to openBVE.

+
+ 3D cabs  +
+
+
This version focuses on the introduction of 3D cabs, which feel vastly different from the old-fashioned 2D cabs. You are now able to move and rotate the camera freely in all directions and can observe controls which could not have been previously depicted.

+ + +

+You can manually adjust the camera, be it with the keyboard, or - new - with the mouse. Just right-click at any time to enable mouse grab and move the mouse to rotate the view. Right-clicking again disables the grab. Not only can you take a look at scenery and stations from new angles, but can also track signs and signals easier, as well as anticipate curves.

There is a new interior camera mode which you can access by pressing CAMERA_INTERIOR (F1 key), which is called Interior (look-ahead). This camera mode focuses the view on the upcoming track and thus rotates the view automatically so that the focused part of the track is in the center of the screen.

+
+ The body/head model  +
+
+
In addition to these things, 3D cabs also employ a new body/head model. Upon accelerating or braking, the body pitches forward/backward, and in curves, the body might roll to the sides before adjusting to the forces.

Rotating the camera view actually rotates the head. If you look closely, you can see the perspective differences resulting from the new body/head model. This is due to the fact that the eyes are not stationary, but move in space whenever the body or head rotate.

+
+ Summing up  +
+
+
All in all, the experience should be one step closer to reality as you can "feel" the forces in the train, and can look freely around as you like.

Now, the one question you'd probably like to ask is: Where can I get some trains which have a 3D cab from?

Well, as the new version has just been released, you might need to be a bit patient before the first real content is released by their developers. Until then, you can try the 113-1000atccab-3D add-on I developed for demonstrational purposes - just don't expect any serious content here.

+ + +

+Hopefully, the first real trains employing 3D cabs will arrive soon. When they do, I hope you will enjoy... +
+
+ + \ No newline at end of file --- openbve-1.2.5.2.orig/debian/licence-background.txt +++ openbve-1.2.5.2/debian/licence-background.txt @@ -0,0 +1,87 @@ +http://openbve.freeforums.org/licence-t39.html + +== Licence == + +Post by Sacro on Sat, 26th Apr 2008, 16:39, UTC + +Just out of curiosity, what licence applies to OpenBVE? It'd be nice +to know if it's GPL or BSD or whatever as I'm quite interested in +helping out. + +Sacro + +== Re: Licence == + +Post by michelle on Sun, 27th Apr 2008, 07:43, UTC + +My attitude differs from so called "free software" licenses. I try to +explain: + +With proprietary software, the developers usually try to restrict what +you are allowed to do with the software to the uttermost extreme that +is legally possible. This falls under the category of copyright. + +Then there is something that is sometimes called green copyright. So +called free software falls in this category. As with proprietary +software, a license is used to tell users what they are allowed to do +and what not. The difference to proprietary software is that so called +free software licenses are usually much more permissive, yet the +author decides what you are allowed to do and what not. So called free +software is usually attributed to derive from "freedom" instead of +"free of charge". Still, if the author employs a license telling other +people what they can or cannot do, this inherently cannot have +anything to do with freedom. + +Then there is something called public domain, which I consider to be +an inherently good thing as everyone has eventually the same rights as +the author. However, releasing a work into the public domain is not +legally meaningful in many countries. Also, releasing a work into the +public domain (if possible) depends on the generosity of the author, +and this decision is made by the author. + +My attitude is even one step further: I am opposed to copyright, thus +I marked the game with the legally not meaningful phrase of +"anti-copyright". It is legally meaningless, because in every country +that has some form of copyright, it would require these laws to be +abandoned. Still, why do I have this attitude? + +With a license, I would be telling other people what they can or +cannot do. I am not such a person. I will not make any silly +restrictions on how you can use this program, I will not tell you to +put my name on any derived work, I will never ever give "permission" +for you modify or redistribute the software, because I don't think +that it is up to me telling you what you can or can't do. You should +make this decision for yourself. + +I hope this briefly explained the situation. + +User avatar +michelle + +== Re: Licence == + +Post by michelle on Sat, 14th Feb 2009, 18:00, UTC + +I have been approached by some individuals over the time, including +from the GNU project and the Ubuntu Foundation (as it appears at +least), and was told that they lack a means of "legal security" for +reuse without an explicit license. You can read my above post on +details about my attitude regarding this matter, but as a start, I +have decided to put the following line on the homepage and will also +include it in any later release: + + " This program, along with all documentation provided, is dedicated + to the public. I do not pose any restrictions on how this material + can be used, and explicitly encourage redistribution and + modification for any purpose. " + +michelle + +== Re: Licence == + +Way to go Michelle! + +Good to hear from another lonely soul out there who gets the true +meaning of freedom. + +BVEColorado --- openbve-1.2.5.2.orig/debian/README.Debian +++ openbve-1.2.5.2/debian/README.Debian @@ -0,0 +1,24 @@ +OpenBve is in theory cross-platform in both Source, and Binary +(compiled) form because it uses CLI/CLR (".Net"/Mono). + +This version for Debian/Ubuntu is compiled from source-code and +includes additional small changes; mainly to add Unix-specific (and +Debian/Ubuntu packaging-specific) file paths. + +OpenBve itself is fairly well designed and abstracts most of the +file-handling, including functions for case-insensitive filename +resolution, but out-of-the-box does not provide suitable default +save/load locations for Unix. + +Most of these necessary alternate paths have been incorporated by +upstream and enabled by the "/fhs" switch. The rest are explicitly +patched on top as part of the Debian packaging process. + +The source is also patched to remove the artificial restriction of the +Train/ and Railway/ directories needing to be in the same place. +Removing this pseudo-requirement allows testing out newly-downloaded +routes saved in your home-directory with a fully packaged route +located under /usr/share/games/bve/ --- or vice-versa. + +Have fun, and try not to crash! + --- openbve-1.2.5.2.orig/debian/control +++ openbve-1.2.5.2/debian/control @@ -0,0 +1,25 @@ +Source: openbve +Section: games +Priority: optional +Maintainer: Paul Sladen +Build-Depends: debhelper (>= 5), mono-xbuild, lynx +Build-Depends-Indep: cli-common-dev (>= 0.7), mono-devel (>=2.0.1), libmono-i18n2.0-cil, libtaoframework-openal-cil-dev, libtaoframework-opengl-cil-dev, libtaoframework-sdl-cil-dev, libmono-winforms2.0-cil +Vcs-Browser: http://github.com/sladen/openbve/tree/debian +Vcs-Git: git://github.com/sladen/openbve.git +Standards-Version: 3.8.3 +Homepage: http://openbve.trainsimcentral.co.uk/ + +Package: openbve +Architecture: all +Depends: ${cli:Depends}, libmono-i18n2.0-cil, openbve-data (>= 1.2.1.3+dfsg) +Recommends: bve-route, bve-train +Provides: bve-engine +Description: realistic 3D train/railway simulator (game engine) + OpenBVE is a railway/train simulator designed to be backwards + compatible with existing 'BVE Trainsim' routes and cab + interiors. + . + Cross-platform using CLI and Mono. + . + http://openbve.trainsimcentral.co.uk/ + --- openbve-1.2.5.2.orig/debian/known-issues.txt +++ openbve-1.2.5.2/debian/known-issues.txt @@ -0,0 +1,165 @@ +Known bugs/issues with running OpenBVE on Linux/Ubuntu/Debian. +============================================================== + +Fixed and merged by upstream: +----------------------------- +2. If you have texture flashing issues; this is because the C-based +OpenGL code was receiving pointers to single integers from the +OpenBVE. Fixed by passing a array. Fixed upstream by passing +components separately. + +3. Crashes out whilst trying to promisicously read non-accessible +directories (eg. '/lost+found' or '~/.dbus'). It is hunting +for directories containing a valid 'train.dat' description file. +Kludged for the moment with try{}catch{} to not die. + +15. Window manager icon loading was not handled. + +5. Non-existant audio; sound should work the first time, but after +quitting OpenAL complains about uncleaned-up buffers. You will +likely need to 'kill -9 pulseaudio', although this may not recover +the situation. Something in OpenAL/SDL isn't being cleanly shutdown. +You may get the occasional sound afterwards on second/third attempts +but not the full multi-channel surround experience. + +6. Captialisation. The routes have a combination of UPPER, lower, and +MiXeD cAsE filenames which is a problem on Unix. The file-loading +routinues need modifying to search for alterntively cased files if +the filename as spelt can't be found. + +7. The London Undergrond cab 'LT_C69_77' appears in the centre of +the screen in OpenBVE, meaning that you can't see where you're going. +As a work-around, you may able to unlock the cam and move yourself up +a bit to look over the top of the console. Sort-of-fixed in 0.9.5.5. +(Though you will need to unlock the camera and zoom out to see any of +the panel). This is to do with the camera-restriction box algorithm +used in OpenBVE. + +8. The sprites Gauges in cabs displayed are not displayed correctly, +instead showing a different/stretched part of the overlay with blue +tinting from the edges of the alpha mask. Clipping/position broken. +You will have to rely on the small rectangle OpenBVE overlays +('EMG/B3/B2/B1/N/P1/P2/P3') instead. + +21. 'Security system warning', this refers to signalling system, not +to the program trying to perform anything naughty! As extension DLLs +are not being available on Linux. Patched to only display a warning +*if* an 'ats.cfg' was present . This avoids the Issues dialogue on an +otherwise error-free route/train. + +22. Hidden dot files/folders (those starting with '.') are clutter +the filemanager. Patched to skip listing dot-files; you can +still type the full name in. May be worth restricting to only +!Platform.Windows. + +26. British English and flag should be en-GB/GB (not 'en-UK/UK'). + +21. In full-screen on Linux, the mouse-cursor (pointer) remains visible in +the centre of the screen. + +18. ExitToMainMenu causes a fork() and return (leaving the user at the +command prompt and daemonising the second instance into the background) +rather than using exec() or restarting itself. This crashes OpenBVE. +It needs openbve to pass "/fhs" back to itself if it was handed it. + +4. Trying to write the directory the executable is in; On Unix this is +likely to be owned by route. Modified to use the CLR SpecialFolder +functions and save configuration data in the right places. + +16. After selecting an exterior camera view and then switching back to +the interior camera; the cab/panel overlay appears in a different position. + +Fixed with outstanding patches: +------------------------------- +14. Loading fails if 'Train/' and 'Railway/' do not share a common parent +directory at some point. # Disabled the check for 'Train/' as it is +not actually used later (loading works fine when a Train/ and Railway/ +are in separate locations. + +Remaining: +---------- +1. The binary 'OpenBve.exe' binary compiled by Michelle for MS Windows +may crash out of the box; hopefully this patched recompile doesn't! +(Whether this is true depends on the particular release!)... + +9. The preview images for trains and route in the file-manager screen +display random binary data if the preview image isn't found (normally +from being the incorrect case). This also applies to flag icons. + +10. Crashes if you provide correct openbve /train=... /route=... + +11. Crashes if you provide incorrect openbve /train=... /route=... + +13. Pressing "Show issues" during a route with loads of reported issues +causes 100% CPU. + +17. CPU load goes up to 100% is OpenBVE is obscured from view +(eg. Alt-tab to another program). + +19. The program may sometimes display "route not found" or "train not found" +even when the correct files do exist. clicking on another route/directory +and then clicking back works around it, so this is probably a race condition. + +20. No way reset the Train (and camera) to be upright after a crash. You +should drive more carefully next time! + +22. Excessive re-drawing of the listview boxes causes the interface to lag +(particularly noticable when typing in the route selection path box. + +23. If the Train/ and Railway/ do not share and immediate common parent +directory, the external view (may) not be loaded. + +24. Route-specific Timetable overlays try to be loaded from +Train/somewhere/../../Railway/Object/... rather than directly from +Railway/Object/... +nb. "Not a bug", according to upstream, but timetables when driving +alternative trains (as suggested/encouraged by the documentation/user +interface) do not work otherwise... + +25. After a route is selected in the listview, the circular "busy" +mouse pointer may stay busy even after loading is completely. As +a workaround, move the mouse-pointer out of the listview rectangle +and back in again. + +26. On closing, it may go into an infinite loop waiting on a futex +(100% CPU). Currently worked around by adding a Watchdog that will +force the program to exit. + +27. First noticed in 1.0.2.0; alpha shading under bridges and lampposts +will flicker and may be yellow instead of gray. Other people have noticed +similar issues since at least 0.9.3.3: +http://openbve.freeforums.org/texture-colouration-in-xcs-t445.html + +28. First noticed in 1.0.2.0; the formLoading dialogue is not getting +Diposed() (closed/destroyed) when the main Game Window opens and +hangs around in the background without being redrawn. + +29. When running on non-Win32 systems where Win32 plugin loading is not +attempted, the message given may be the current one. Repeated patches +sent to upstream to fix the ordering, but not yet applied. + +30. When jumping to a station, the position will overrun by the z-offset +of the cab in the '#COCKPIT' section of 'train.dat'. + +31. When running the 'HighDetail_323_Summer_2002_0931_Rain_Overcast.csv' +diagram of the Cross City-South route under the AI, the AI will get +stuck at 2.5 metres before "Station 4" (a signalling-onlynon-station +after Northfield). The AI stops outside the allowed tolerance and so +the signal does not clear and the AI does not attempt to progress any +closer. (1.2.1.1 onwards). + +32. If mouse-look is in use (click the right mouse button once) and +Ctrl-f is pressed to switch between windowed and fullscreen, then the +viewport direction will randomly move; leaving the camera in a number +of strange directions (eg. upside down, sideways or looking backwards). +More pronounced with the cab camera restriction disabled (Ctrl-r). + +In-progress: +------------ +12. Language Locale not automatically set by default; patched to use +System.Globalization.CultureInfo.CurrentCulture.Name as default, but +needs refining to cope with 'll_CC' not just 'll' language codes. +This is done on first-load but then forcifully saved in the options +even if the user has not manually selected a language (prevents +future automatic language selection working). + --- openbve-1.2.5.2.orig/debian/openbve.desktop +++ openbve-1.2.5.2/debian/openbve.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Version=1.0 +Type=Application +Name=OpenBVE +Categories=Game;Simulation; +Comment=Train/railway simulator compatible with 'BVE Trainsim' routes +Terminal=false +TryExec=openbve +Exec=openbve +Icon=openbve.128 --- openbve-1.2.5.2.orig/debian/changelog +++ openbve-1.2.5.2/debian/changelog @@ -0,0 +1,167 @@ +openbve (1.2.5.2-0ubuntu1) lucid; urgency=low + + * New upstream stable version (1.2.5.2) + * Tweak build-deps to use newer tao*-cil-dev packages + + -- Paul Sladen Tue, 16 Feb 2010 14:03:00 +0000 + +openbve (1.2.5.1-0ubuntu1) lucid; urgency=low + + * New upstream stable version (1.2.5.1) + fixes (LP: #505299) + * changelog.html: update (1.2.5.1) + * rules: explicitly pass 'OpenBve.csproj' to xbuild + * rules: use xbuild /t:Clean target now that it works + + -- Paul Sladen Mon, 15 Feb 2010 18:28:00 +0000 + +openbve (1.2.4.5-0ubuntu1) unreleased; urgency=low + + * New upstream development version (1.2.4.5) + + -- Paul Sladen Sat, 9 Jan 2010 02:03:00 +0000 + +openbve (1.2.4.4-0ubuntu1) lucid; urgency=low + + * New upstream development version (1.2.4.4) + + fixes autoscaling (LP: #503913) + + -- Paul Sladen Thu, 7 Jan 2010 15:18:00 +0000 + +openbve (1.2.4.1-0ubuntu1) lucid; urgency=low + + * New upstream development version (1.2.4.1) (LP: #444934) + fixes (LP: #419523) (LP: #419525) (LP: #419530) (LP: #444462) + * changelog.html: update (1.2.3.3) + + -- Paul Sladen Wed, 6 Jan 2010 07:58:00 +0000 + +openbve (1.2.2.0-0ubuntu1) unreleased; urgency=low + + * New upstream stable version (1.2.2.0) (LP: #444934) + * changelog.html: update (1.2.2.0) + * releasenotes.html: update (1.2.1.3) + * Add NEWS.Debian to docs + + -- Paul Sladen Tue, 1 Sep 2009 00:11:00 +0100 + +openbve (1.2.0.3-0ubuntu1) karmic; urgency=low + + * New upstream stable version (1.2.0.3) + * debian/copyright: update to reflect minor wording changes + * debian/rules: "./rules fetch-html" for {changelog,releasenotes}.html + * changelog.html: update (1.2.0.3) + * releasenotes.html: update (1.2.0.0) + * debian/rules: DEBUG_CONFIGURATION=Release to switch codepaths used + * debian/control: openbve-data (>= 1.2.0.3+dfsg) + + -- Paul Sladen Thu, 6 Aug 2009 02:05:00 +0100 + +openbve (1.1.1.0-0ubuntu1) unreleased; urgency=low + + * New upstream development version (1.1.1.0) + * debian/control: rev 'openbve-data' dependency (new strings) + + -- Paul Sladen Sun, 05 Jul 2009 21:10:00 +0000 + +openbve (1.0.7.2-0ubuntu1) karmic; urgency=low + + * New upstream version (1.0.7.2) + * Update changelog.html (1.0.7.2) + + -- Paul Sladen Tue, 23 Jun 2009 20:20:00 +0000 + +openbve (1.0.6.7-0ubuntu1) unreleased; urgency=low + + * Add WatchdogExit() to take care of deadlocks in library shutdown + * New upstream version (1.0.6.7) + + -- Paul Sladen Sun, 7 Jun 2009 02:54:00 +0000 + +openbve (1.0.6.2-0ubuntu1) unreleased; urgency=low + + * New upstream version (1.0.6.2) + * Update 'debian/known-issues.txt' + * Update 'openbve-data' Depends: >= 1.0.6.0+dfsg + * Drop try..catch around saving of logs (should be handled by + separate patch applied by upstream. + * Update changelog.html (1.0.6.2) + + -- Paul Sladen Fri, 29 May 2009 15:12:03 +0000 + +openbve (1.0.6.0-0ubuntu1) unreleased; urgency=low + + * New upstream version (1.0.6.0) + * Make dropping out of full-screen *very* first priority + * Update changelog.html (1.0.6.0) and releasenotes.html (1.0.5.0) + * Update known-issues.txt + + -- Paul Sladen Thu, 28 May 2009 06:53:10 +0000 + +openbve (1.0.2.0-0ubuntu2) jaunty; urgency=low + + * Explicitly depend on 'libmono-i18n2.0-cil' (LP: #356487) + * Backport homepage update to 'http://openbve.trainsimcentral.co.uk/' + + and fix packaging to reflect + * Expand debian/copyright based on feedback for acceptance into Debian + + -- Paul Sladen Wed, 15 Apr 2009 02:56:20 +0000 + +openbve (1.0.2.0-0ubuntu1) jaunty; urgency=low + + * New upstream version (bugfix release) (LP: #356344) + * debian/rules: tweak to allow easy building of Debug or Release target + * pass '/fhs' from the mono wrapper instead of hardcoding + * overload GetSettingsFolder() to create the config directory before return it + * Load first-use Keyboard mapping from GetDataFolder("Controls") not ~/ + * Default first-use game data from /usr/share/games/bve/{Railway/Route,Train} + * Update 'openbve-data' Depends: >= 1.0.2.0+dfsg + * Load timetables relative to route directory, not trainpath + + disable spurious Train folder warning, as existance is not required later + * Don't display hidden .files and .folders in ListViews + * Include 'changelog.html' and 'releasenotes.html' downloaded from the website + * Fix case in manpage documentation for '~/.config/OpenBve/' + * Add README.Debian covering Debian-centric patches + * Update 'known-issues.txt' + * Print + try...except{} around path used in LoadOptions() (debugging) + * Pacify lintian checker + * Leave fullscreen before deinitialisation to reduce risk of leaving a mess + + -- Paul Sladen Sun, 05 Apr 2009 12:33:10 +0000 + +openbve (0.9.5.5-0ubuntu3) unreleased; urgency=low + + * Tweak manpage + + -- Paul Sladen Thu, 23 Feb 2009 12:48:27 +0000 + +openbve (0.9.5.5-0ubuntu2) jaunty; urgency=low + + * Fix FTBFS: 'libtaoframework-openal1.1-cil' and 'libmono-winforms2.0-cil' + plus move 'mono-xbuild' from -Indep (for clean target). + * Use optimised compiler target (Release, instead of Debug) + * Use '/usr/share/games/bve/' as default train/route location + * Only whinge about plugins not being available if 'ats.cfg' exists + * Don't display hidden .files and .folders in ListViews + * Update manpage with initial tab options + * Disable spurious Train folder warning message, + as existance is not required later + * Handle ll-CC default langauge selection and fall back to just ll. + * Use Sdl_WM_SetIcon() on all platforms + * Bump openbve-data (>= 0.9.5.5+dfsg-0ubuntu3) dependency + * Load timetables relative to route directory, not trainpath + + -- Paul Sladen Thu, 19 Feb 2009 18:49:21 +0000 + +openbve (0.9.5.5-0ubuntu1) jaunty; urgency=low + + * New upstream release 0.9.5.5, dated 20090217-2228 + * Initial release (LP: #331188) + + -- Paul Sladen Wed, 18 Feb 2009 23:23:30 +0200 + +openbve (0.9.5.0-0ubuntu1) unreleased; urgency=low + + * import 0.9.5.0, dated 20090201-1953 + + -- Paul Sladen Fri, 15 Feb 2009 11:51:30 +0100 --- openbve-1.2.5.2.orig/debian/openbve.install +++ openbve-1.2.5.2/debian/openbve.install @@ -0,0 +1,2 @@ +debian/openbve.desktop usr/share/applications + --- openbve-1.2.5.2.orig/debian/rules +++ openbve-1.2.5.2/debian/rules @@ -0,0 +1,73 @@ +#!/usr/bin/make -f +export DH_VERBOSE=15 +BUILDDIRS = openBVE/OpenBve +TARGET = $(CURDIR)/debian/openbve +#DEBUG_CONFIGURATION=Debug +DEBUG_CONFIGURATION=Release + +configure: configure-stamp +configure-stamp: + dh_testdir + touch configure-stamp + +build: build-stamp +build-stamp: configure-stamp + dh_testdir + for builddir in $(BUILDDIRS); do \ + (cd $$builddir && xbuild /p:Configuration=$(DEBUG_CONFIGURATION) OpenBve.csproj) || exit 1; \ + done + touch build-stamp + +clean: + dh_testdir + dh_testroot + rm -f build-stamp configure-stamp + rm -rf $(TARGET) + for builddir in $(BUILDDIRS); do \ + (cd $$builddir && xbuild /t:Clean OpenBve.csproj); \ + rm -rf $$builddir/obj; \ + done + dh_clean + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + install -m 755 $(CURDIR)/openBVE/OpenBve/bin/$(DEBUG_CONFIGURATION)/OpenBve.exe $(TARGET)/usr/lib/openbve/ + install -m 644 $(CURDIR)/openBVE/OpenBve/bin/$(DEBUG_CONFIGURATION)/OpenBve.exe.mdb $(TARGET)/usr/lib/openbve/ + install -m 755 -T $(CURDIR)/debian/openbve.wrapper $(TARGET)/usr/games/openbve + lynx -dump -nolist $(CURDIR)/debian/changelog.html > $(TARGET)/usr/share/doc/openbve/changelog + +binary-arch: + # Do nothing + +binary-indep: build install + dh_testdir + dh_testroot + dh_installmenu + dh_install + dh_installcligac + dh_installchangelogs + dh_installdocs + dh_fixperms + dh_clifixperms + dh_installman + dh_installdeb + dh_shlibdeps + #dh_makeclilibs -i -V + #dh_installcligac -i + dh_clistrip + dh_clideps -d -r + dh_compress + dh_gencontrol + dh_md5sums + dh_builddeb + +# For running manually +fetch-html: + wget http://openbve.trainsimcentral.co.uk/changelog.html && mv changelog.html.1 changelog.html + wget http://openbve.trainsimcentral.co.uk/releasenotes.html && mv releasenotes.html.1 releasenotes.html + +binary: binary-indep +.PHONY: build clean binary-indep binary install configure --- openbve-1.2.5.2.orig/debian/openbve.menu +++ openbve-1.2.5.2/debian/openbve.menu @@ -0,0 +1,3 @@ +?package(openbve):needs="X11" section="Games/Simulation"\ + title="OpenBVE" command="/usr/games/openbve" + --- openbve-1.2.5.2.orig/debian/openbve.wrapper +++ openbve-1.2.5.2/debian/openbve.wrapper @@ -0,0 +1,2 @@ +#!/bin/sh +exec /usr/bin/cli /usr/lib/openbve/OpenBve.exe /fhs "$@" --- openbve-1.2.5.2.orig/debian/routes-and-trains.txt +++ openbve-1.2.5.2/debian/routes-and-trains.txt @@ -0,0 +1,117 @@ +Expansion routes and trains +=========================== + +The BVE route-designing community is quite extensive, as the original +Japanese (free as in beer) "BVE Trainsim" has been around since the +1990s. The basic route text-based file format has been flexible to +allow adding extra detail (models and textures) in line with computing +power increases. + +BVE (and OpenBVE) are particularly popular in Britain and Japan; therefore +the highest-quality BVE routes tend to features real or fictional locations +in these two countries. + +Via the web +=========== + +There are several main issues with finding expansion routes/trains: + +1. Virtually all BVE routes are free-as-in-beer; but come with + restrictions preventing distribution, except via the original authors' + homepage. + +2. There is no consistent/central download location. When you do find a forum + this may require registering and a new login to get the link. + +3. The downloads are not consistently formatted; They can be '.zip', + self-extracting '.exe', MS Windows Installer '.msi' or '.7z'... + .msi files can normally be unpacked using Wine's 'msiexec' and + then copying the files from ~/.wine/drive_c/somewhere. + +4. Most routes were created on MS Windows, which has case-insensitive + filenames. It may be necessary to rename them to lowercase. + +Websites +======== + +These websites may be a good starting point for locating additional files: + + http://www.uktrainsim.com/ + http://www.trainsimcentral.co.uk/ (Birmingham "Cross-City") + http://www.bveroutes-trains.co.uk (Jubilee Line/London Underground) + http://www.eezypeazy.co.uk (Tyne Valley) + +This beautiful Italian route is designed for OpenBVE: + + http://fevf.altervista.org/ + +There are excellent Japanese routes available at: + + http://gri.s60.xrea.com (Joetsu Line) + http://notsuki.hp.infoseek.co.jp/oha/bve/iiyama2060/index.html (IIYAMA Line 2060) + http://ec207.tea-nifty.com/blog/2008/07/atssnp_275b.html (ATS-Sn/P Test Route) + http://greenshuttle.loops.jp/bve/bve.html (Tokyo Metro Hanzomon and Ginza Lines) + +Extracting +========== + +Once you have succeded in finding the promise of a route, or train and +managed to unpack it sufficiently to get at the actual files. What you +need to look for are the directories: + +(a) For railway routes: + + .../Railway/Route/my-first-route.csv + +This will often refer to 'Object/...' stored in directory above, or +textures/models assumed to be available with the original 'BVE' +program's default route. As such you will need to keep this directory +structure intact. + +BTW, you can open the '.csv' file with a text-editor or spreadshet; See below. + +(b) For cab and train descriptions; For an ABC locomotive, this might be: + + .../Train/Abc123/train.dat + +Where 'Abc123' is the directory that is loaded with OpenBVE. The required files +should be all inside this directory. + +Format +====== +The route file format can only follow a pre-defined journey. This is +defined in the '.csv' (Comma Separated Value) file. Each point of +interest (model) or change in the track is measured in metres relative +to the starting point. + +The first column is the distance, and remaining columns change what +happens, or begins or ends at that point. + +Multiple parallel tracks are very easily designed in BVE format as they +are simply defined as a horizontal/vertical offset compared to the first track +that the train is taking. + +Points are modelled (although cannot be taken) by moving a parallel track +closer the the main track and then stopping it. + +If the train is required to "cross over" to the "other line", the +track the train is on is actually slewed across, with a new empty line +started straight ahead and an old empty line stopped when train's +route has moved across. + +In addition to the source code, full reverse-engineered documentation +from analysising the original free-as-in-beer BVE Trainsim program +is available in English at: + + http://openbve.trainsimcentral.co.uk/develop/ + +Some documentation of the formats is available in Japanese at: + + http://mackoy.cool.ne.jp/index4.html + +Author +====== +This text document written by Paul Sladen +for Debian/Ubuntu and released into the Public Domain. List of +suggested download addresses contributed by Anthony Bowden +. --- openbve-1.2.5.2.orig/debian/compat +++ openbve-1.2.5.2/debian/compat @@ -0,0 +1 @@ +5 --- openbve-1.2.5.2.orig/debian/changelog.html +++ openbve-1.2.5.2/debian/changelog.html @@ -0,0 +1,1304 @@ + + + + + + + +Changelog + + + + + + + + + + +
Logo +AboutScreenshotsUsingDevelopingBlogForumDownload +
+
+ + + + +
+
+Changelog  +
+

+
+This changelog is intended for advanced users and developers. It does not summarize important changes for regular users.

1.2 series (stable)
+↷ 1.1 series (development)
+↷ 1.0 series (stable)
+↷ 0.9 series (development)
+
+
+
+
+ 1.2 series (stable)  +
+
+
+
+ v1.2.5.1 (2010-02-14)  +
+
+ + + + +
 Bugfix
When zooming out of a 2D cab with camera restriction enabled, the camera could get stuck, preventing the user from zooming in again or moving around.
+ + + + +
 Bugfix
On trains with the automatic air brake, the brake.wav or BP Decomp sounds would play when moving from SRV to LAP or from LAP to REL when they should actually play when moving from REL/LAP to SRV/EMG.
+ + + + +
 Bugfix
Passengers should get stuck between the doors every once in a while - a feature that was introduced in v1.0.5.0. This feature never worked at all until now.
+
+
+ v1.2.5.0 (2010-01-24)  +
+
+ + + + +
 Sound
The distance attenuation model has been rewritten. Additionally, the dependencies on ALUT and SDL_MIXER have been removed.
+ + + + +
 Sound
The list of supported sound formats has changed. Most importantly, all sample rates and numbers of channels are supported now. Aside from PCM, Microsoft ADPCM is supported now, too.
+ + + + +
 Simulation
The player's train now derails when passing the end of the track.
+ + + + +
 Interface
In the Jump to Station menu, the next station is now the one highlighted by default. Previously, it was always the first station in the list.
+ + + + +
 Interface
The main menu is now smaller by default in order to accomodate smaller screens or larger fonts. If resized, the size of the main menu is preserved between sessions now.
+
+
+ v1.2.3.3 (2010-01-03)  +
+
+ + + + +
 Performance
During the time the in-game loading screen is showing, time is fast-forwarded until the player train's arrival time. Up to now, animated objects of trains (panel, exterior) were always updated during this time, leading to excessive loading times for very detailed animated objects. Updating those objects is now skipped during the fast-forward stage, leading to faster loading times in those cases.
+ + + + +
 Bugfix
In some cases, the Track.Rail and Track.RailStart commands in CSV/RW routes could reset the rail type to 0 even when this was not intended.
+ + + + +
 Bugfix
In some cases, CSV/RW route errors were reported without giving the file name of the route, making debugging the error potentially harder, especially if $Include statements were used.
+
+
+ v1.2.3.2 (2009-12-13)  +
+
+ + + + +
 Bugfix
There was a chance that the program could crash with a NaN in multiple places. While such a crash has not been observed yet, it's probably best to fix this anyway.
+
+
+ v1.2.3.1 (2009-11-29)  +
+
+ + + + +
 Simulation
Point-based turns are now smoothened out by using short curve segments instead of discontinuous straight track pieces.
+ + + + +
 Miscellaneous
Removed the dependency on specific versions of the Tao.OpenAL, Tao.OpenGL and Tao.SDL libraries, which could cause problems in recent Linux distributions.
+ + + + +
 Miscellaneous
Due to an apparent glitch in Mono, the loading screen would not show the Save Report button on Mac OS X. An attempt has been made to circumvent this glitch.
+
+
+ v1.2.3.0 (2009-11-15)  +
+
+ + + + +
 Simulation
Minor improvements to the AI. In particular, the AI should not get stuck in front of a stop point on upward gradients any longer.
+ + + + +
 Developing routes
The $Include command has been added which allows to include other files, optionally one of a set of files with a certain probability.
+ + + + +
 Developing routes
Added the Train.Velocity command in CSV/RW routes. The command defines the upper speed limit the AI-controlled trains may travel at.
+ + + + +
 Miscellaneous
Comments in RW routes now span the whole line instead of up to the beginning of the next command.
+ + + + +
 Miscellaneous
Due to an apparent glitch in Mono, the loading screen would not show the Ignore button on Mac OS X. An attempt has been made to circumvent this glitch.
+
+
+ v1.2.2.0 (2009-09-20)  +
+
+ + + + +
 Developing objects
Added the hasPlugin, acceleration and accelerationMotor variables (among others) for use in animated objects.
+ + + + +
 Developing trains
Added the acc and motor subjects for use in the panel2.cfg.
+ + + + +
 Developing routes
Lengths using the colon notation in CSV/RW routes are now well-defined when omitting parameters.
+ + + + +
 Interface
Some controls in the main menu used a custom background color but a system-specific foreground color, rendering text unreadable with some color schemes.
+ + + + +
 Bugfix
The delta variable returned incorrect results in animated objects whenever RefreshRate was set to a non-zero value.
+ + + + +
 Bugfix
Lengths entered without the colon notation were not processed correctly when using Options.UnitOfLength in CSV/RW routes.
+ + + + +
 Bugfix
Gray fog could show on routes which did not use fog, but only if the viewing distance was below 600 meters.
+
+
+ v1.2.1.3 (2009-08-31)  +
+
+ + + + +
 Bugfix
Value-based sections could crash the program with an Index is outside the bounds of the array message.
+
+
+ v1.2.1.2 (2009-08-30)  +
+
+ + + + +
 Simulation
For trains which do not have exterior objects for their cars, a default object is now shown. In contrast to previous versions, this feature is now not only the default behavior, but also, it cannot be deactivated through conventional means.
+ Rationale: Many users wonder why signalling works the way it does, or wonder why they suddenly derail en-route. Often, this is due to the presence of a preceding train which does not come with exterior objects. Further, the own train is not invisible this way, either.
+ + + + +
 Simulation
When resetting the camera view for the fly-by modes, the camera is now placed about 5 seconds ahead of the train for more interesting approaches.
+ + + + +
 Developing trains
The [Breaker] section is now available in the sound.cfg for compatibility reasons.
+ + + + +
 Developing routes
The train reference for animated world objects is now the nearest train instead of the player's train. This should allow simulating crossings, station doors, etc. with any train.
+ + + + +
 Bugfix
When mouse grab was activated and the user toggled to or from fullscreen mode, the viewing angle could abruptly change to arbitrary angles.
+ + + + +
 Bugfix
When starting the simulation or when using the Jump to feature, the train's first car's front axle lined up with the stopping post instead of the very front of the train.
+
+
+ v1.2.1.1 (2009-08-17)  +
+
+ + + + +
 Bugfix
Plugins were reported the wrong initialization mode of the safety system via the Initialize call. This could lead to some trains not working correctly.
+ (Plugin developers are advised to update their plugin.h header file and to inspect whether their plugin's behavior (still) conforms to the documentation.)
+
+
+ v1.2.0.3 (2009-08-04)  +
+
+ + + + +
 Bugfix
The AI could crash the game with an The index is outside of the bounds of the array error whenever it encountered a station without defined station stops.
+ + + + +
 Bugfix
The route parser did not process the Route.Change command correctly and could mix up the values. An attempt was made to correct this. (late note: did not work)
+
+
+ v1.2.0.1 (2009-07-29)  +
+
+ + + + +
 Bugfix
The object optimizer could create incorrect geometry when trying to optimize for TRIANGLE_STRIP structures.
+
+
+ v1.2.0.0 (2009-07-26)  +
+
+Compared to v1.0.7.3 (most important changes only):

+ + + +
 Simulation / Interface
Fully 3D cabs are now available (panel.animated) along with mouse-supported camera rotation. Right-click at any time to enable or disable mouse grab.
+ + + + +
 Simulation
In 3D cabs, the driver's head and body are now simulated. This feature reacts to changes in acceleration and to inertia in curves, resulting in pitch and roll of the body or head. Manual camera rotation also makes use of this model.
+ + + + +
 Simulation
In 3D cabs, a look-ahead view has been introduced. This essentially focuses the view on an upcoming part of the track, thus following curves and pitch changes. This view can be switched on or off by pressing F1 (CAMERA_INTERIOR) multiple times.
+ + + + +
 Options
Vertical synchronization (vsync) can now be enabled or disabled in the Options menu.
+ + + + +
 Developing objects
A series of new variables has been introduced to the functions of animated objects.
+ + + + +
 Developing objects
The ANIMATED object format has been given an [Include] section that just allows to easier integrate other objects without animating them, including other ANIMATED objects.
+ + + + +
 Developing routes
The Route.RunInterval command (CSV) now allows to create any amount of preceding or following trains. The Route.RunInterval and Track.PreTrain commands can now also be used in conjunction, which was not previously possible.
+
Compared to v1.1.4.0:

+ + + +
 Simulation / Interface
Adjusted the sensitivity of the mouse, the speed of exterior rotation, as well as the forces employed by the body/head model.
+ + + + +
 Developing routes
All of the Track.Beacon, Track.Tr and Track.Relay commands now have X, Y, Yaw, Pitch and Roll arguments.
+ + + + +
 Bugfix
Increased the robustness of the route parser to avoid crashes on invalid arguments (e.g. Track.Back, Track.Announce and Track.Doppler).
+
+
+
+ 1.1 series (development)  +
+
+
+
+ v1.1.4.0 (2009-07-18)  +
+
+ + + + +
 Simulation
The pseudo-ORP functionality of the built-in ATC safety system has been removed for better, mostly visual compatibility with older routes.
+ + + + +
 Simulation
The AI now waits at the stopping point of a station if there is a red signal about 150m ahead.
+ + + + +
 Bugfix
The new damping algorithm would hang whenever the natural frequency was zero (which is not very meaningful, but is encountered with some add-ons).
+ + + + +
 Bugfix
Option.ObjectVisibility 1 did not work correctly with static objects embedded in ANIMATED object files.
+
+
+ v1.1.3.1 (2009-07-14)  +
+
+ + + + +
 Bugfix
Using the Track.Turn command could mess up the track geometry with v1.1.3.0 when other rails were in use at that track position.
+ + + + +
 Bugfix
Static objects embedded in ANIMATED object files (i.e. no functions used) did not take auxillary transformations, such as yaw, pitch and roll, which are employed by various route commands, into account.
+
+
+ v1.1.3.0 (2009-07-13)  +
+
+ + + + +
 Developing routes
The Route.RunInterval command (CSV) now allows to create any amount of preceding or following trains. The Route.RunInterval and Track.PreTrain commands can now also be used in conjunction, which was not previously possible.
+ + + + +
 Developing routes
The .Load suffix is now optional in Train.Timetable(TimetableIndex).Day.Load and Train.Timetable(TimetableIndex).Night.Load in CSV routes.
+ + + + +
 Developing objects
The ANIMATED object format has been given an [Include] section that just allows to easier integrate other objects without animating them, including other ANIMATED objects.
+ + + + +
 Renderer
The precision of the z-buffer has been increased from 16 bit to 24 bit. In addition, 3D cabs and scenery now use different settings for the near and far clipping planes so that scenery has more precision in the distance, while 3D cabs have more precision near the camera.
+ + + + +
 Miscellaneous
The Win32-specific timers have been removed as they could yield erratic results on some multi-core processors. The general SDL timer is now used instead.
+ + + + +
 Bugfix
The opening and closing times of the doors were supposed to derive directly from their respective sounds. As the sound manager was not yet initialized at the time the duration of the sounds were queried, the internal default values for opening and closing times were used all the time.
+ + + + +
 Bugfix
An error in the geometric model employed by the CSV/RW route parser has been detected, and attempts have been made to correct the problem. Presently, it has not been fully evaluated if the problem has indeed been fixed.
+
+
+ v1.1.2.0 (2009-07-08)  +
+
+ + + + +
 Developing objects/panels
The mappings of the built-in safety systems in pluginState (animated objects) and atsi (panel2.cfg) has been changed from 0-14 to 256-271. While existing trains using the built-in safety systems are unlikely to use these variables, trains using Windows-only DLL plugins on Linux/Mac will use the built-in safety systems instead. As the variables 0-14 might already be in use by panels/objects (e.g. lamps/wipers/drops) in this case, these elements might be fed non-compatible data. The mapping 256-271 is safe because it cannot be used by existing plugins. This is a non-backward-compatible change since v1.1.0.0.
+ + + + +
 Interface
Scolling with the mouse has been made more smooth.
+ + + + +
 Bugfix
Aspects in Track.Section were previously sorted into ascending order, which should not have happened for index-based section behavior. This prevented the safety systems of some trains from working properly on some routes. Example: IIYAMA 2060.
+ + + + +
 Bugfix
Lighting was still not correct on 2D cabs since v1.1.1.0, which is definately fixed now.
+
+
+ v1.1.1.0 (2009-07-03)  +
+
+ + + + +
 Simulation
In 3D cabs, the driver's head and body are now simulated to parts. This experimental feature reacts to changes in acceleration and to inertia in curves, resulting in pitch and roll of the body or head. Manual camera rotation also makes use of the body/head model.
+ + + + +
 Simulation
In 3D cabs, an experimental look-ahead view has been introduced. This essentially focuses the view on an upcoming part of the track, thus following curves and pitch changes. This view can be switched on or off by pressing F1 (CAMERA_INTERIOR) multiple times.
+ + + + +
 Renderer
If no background image is present, a black background is shown. This also works with fog now, which did not show on the background previously in such a case.
+ + + + +
 Interface
Toggling the mouse grab on or off has been changed from the left mouse button to the right mouse button. This allows to give the window focus with the left mouse button without affecting the mouse grab status, which is more intuitive (at least on Windows).
+ + + + +
 Bugfix
The damping algorithm has been completely rewritten. Previously, it was unstable with low frame rates, and also did not handle constantly changing angles well. The new algorithm synchronizes updating the target angle with its own natural frequency, and also uses a mathematically correct implementation for calculating derivatives.
+ + + + +
 Bugfix
The ambient and diffuse lighting conditions in 3D cabs were supposed to be independent from the environmental conditions. However, this lighting model was accidentally applied on the 2D cabs in v1.1.0.0 instead of on the 3D cabs, resulting in wrong lighting conditions for both.
+
+
+ v1.1.0.0 (2009-06-28)  +
+
+ + + + +
 Simulation / Interface
Fully 3D cabs are now available (panel.animated) along with mouse-supported camera rotation. Left-click at any time to enable or disable mouse grab.
+ + + + +
 Options
Vertical synchronization (vsync) can now be enabled or disabled in the Options menu.
+ + + + +
 Developing objects
A series of new variables has been introduced to the functions of animated objects. The documentation has all changes highlighted.
+ + + + +
 Developing panels
The atsi subject now also has a meaning with the built-in safety systems. The documentation has all changes highlighted.
+ + + + +
 Bugfix
Objects mirrored by the Track.Pole command could appear inside-out if GL_QUAD_STRIP structures were generated by the object optimizer. Example: DemoRoute1.
+
+
+
+ 1.0 series (stable)  +
+
+
+
+ v1.0.7.3 (2009-07-08)  +
+
+ + + + +
 Bugfix
Objects mirrored by the Track.Pole command could appear inside-out if GL_QUAD_STRIP structures were generated by the object optimizer. Example: DemoRoute1.
+ + + + +
 Bugfix
Aspects in Track.Section were previously sorted into ascending order, which should not have happened for index-based section behavior. This prevented the safety systems of some trains from working properly on some routes. Example: IIYAMA 2060.
+ + + + +
 Internationalization
Added translation for the Korean language.
+
+
+ v1.0.7.2 (2009-06-17)  +
+
+ + + + +
 Bugfix
Some objects did not load correctly since 1.0.7.0 and would produce a message about an unexpected error.
+
+
+ v1.0.7.1 (2009-06-14)  +
+
+ + + + +
 Renderer
Rendering is now noticably faster.
+ + + + +
 Renderer
Minor improvements to reduce artifacts related to depth sorting.
+ + + + +
 Renderer
Circumvented an OpenGL glitch that could cause erratic polygons to appear whenever fullscreen was toggled on or off.
+ + + + +
 Interface
For users who experience long loading times, hidden options have been introduced to reduce or disable the object optimization process.
+ + + + +
 Simulation
Fully rewritten ATS-P results in more realistic brake curves.
+ + + + +
 Developing routes
New options for ArrivalTime in the Track.Sta and Track.Station commands make it possible for the player to stop at a station, but not the preceding train, or vise versa.
+ + + + +
 Developing objects
New arguments for AddVertex (CSV) and Vertex (B3D) allow for providing custom normals.
+ + + + +
 Developing objects
Added the Shear and ShearAll commands to allow for shear mapping (skewing).
+
+
+ v1.0.6.2 (2009-05-28)  +
+
+ + + + +
 Bugfix
Fog did not show the correct color in some cases since 1.0.6.0. The interpolation to a no-fog condition has been made smoother and consistent. The route parser reports fog-related ill-conditions now.
+ + + + +
 Bugfix
The in-game clock did not wrap after 23:59:59 and showed 24:00:00 instead of the desired 00:00:00, for example.
+
+
+ v1.0.6.0 (2009-05-24)  +
+
+ + + + +
 Renderer
The quality of the Smooth transparency mode has been radically improved at the expence of some performance.
+ + + + +
 Simulation
The AI now takes a bit less time trying to stop accurately at stations.
+ + + + +
 Simulation
ATC now works in 200 meter long blocks instead of calculating a brake curve to the preceding train continuously. Previously, the continuous update could create too frequent changes of the allowed speed, leading to a lot of successive ding sounds.
+ + + + +
 Interface
A command to accelerate time has been added, MISC_TIMEFACTOR, which defaults to CTRL+J.
+ + + + +
 Interface
A command to mute/resume sound has been added, MISC_MUTE, which defaults to CTRL+M.
+ + + + +
 Interface
Non-Windows users now get a warning message in a train's description box if that train uses a Windows-only safety system plugin.
+ + + + +
 Routes
If the $Chr/$Rnd/$Sub preprocessor creates a leading semicolon in an expression, that expression is now considered a comment. Previously, stripping away comments was only done before the preprocessor, which made it impossible to dynamically create comments.
+ + + + +
 Bugfix
The cab and exterior objects were placed incorrectly if the car had an asymmetric axle setup.
+ + + + +
 Bugfix
Fog on the background image now produces a consistent look regardless of the viewing distance. Previously, the background image could look differently depending on the viewing distance.
+
+
+ v1.0.5.0 (2009-05-03)  +
+
+ + + + +
 Simulation
Passenger-related door lock is now simulated. This is based on the PassengerRatio parameter in the Track.Sta command, and is more probable to occur on crowded trains.
+ + + + +
 Simulation
The AI has been fine-tuned. It makes use of cruising, holding speed by selecting a suitable power notch, and can react to wheel slip by restricting use of certain power notches.
+ + + + +
 Internationalization
Added translation for the Czech language.
+ + + + +
 Developing routes
Added new options to the Doors parameter in the Track.Sta command.
+ + + + +
 Bugfix
The route parser could previously accept , and ; as an argument separator for either CSV or RW formats, even though only one of these characters is used by either format. This could seldom lead to parsing problems, but is corrected now anyway.
+ + + + +
 Bugfix
The background image was not correctly aligned vertically if the Texture.Background(BackgroundTextureIndex).Aspect option was set to 1 (keep aspect ratio) in route files.
+ + + + +
 Bugfix
Version 1.0.4.0 introduced the peculiar behavior of rolling the external view at startup, which is corrected now.
+
+
+ v1.0.4.0 (2009-04-26)  +
+
+ + + + +
 Developing routes
In route files, commands from namespaces other than Track are now processed first, then the track position is reset to 0, then commands from the Track namespace are processed. This is to increase compatibility with routes which use track positions before using commands from the Track namespace.
+ + + + +
 Developing routes
Rephrased all error messages in the CSV/RW route parser to match the terminology of the documentation.
+ + + + +
 Bugfix
All parsers now validate file names, as otherwise, the program could crash when any format referenced a file name which included invalid characters.
+
+
+ v1.0.3.0 (2009-04-12)  +
+
+ + + + +
 Interface
The default camera locations of the exterior and track/fly-by modes are now at the top-left of the rear of first car again.
+ + + + +
 Interface
Resetting the camera view in the fly-by modes reflects the current speed of the train by placing the camera further away from the train the higher the speed is.
+ + + + +
 Developing trains
For compatibility reasons, the exponent e in the acceleration section of train.dat versions 1.22 is now clipped at 4 after converting to a 2.0 exponent.
+ + + + +
 Interface
Updated the URLs used inside the program to point to the new homepage. This has also been done for Train Editor.
+ + + + +
 Internationalization
Renamed the en-UK language to en-GB. The reason is simply that GB stands for United Kingdom, while UK stands for Ukraine.
+ + + + +
 Miscellaneous
Renamed OpenBve64.exe to OpenBveAllCpu.exe, which is now compiled against any CPU instead of AMD x64.
+ + + + +
 Miscellaneous
Some minor Linux-specific things to increase portability.
+
+
+ v1.0.2.0 (2009-04-05)  +
+
+ + + + +
 Developing trains
If a train does not explicitly specify the operating pressure of the brake pipe, it is now assumed to be 490 kPa if applicable.
+ + + + +
 Bugfix
PNG and GIF textures are now synchronously loaded in order to prevent them from ending up in the alpha rendering list where applicable (which is more expensive to render and can cause visual glitches if too heavily populated due to the use of depth sorting).
+ + + + +
 Bugfix
The RefreshRate parameter in animated objects was not applied if the animated object was used as a train exterior object.
+ + + + +
 Bugfix
Beacons which appeared before the starting position were not triggered, causing some trains to operate incorrectly on some routes.
+
+
+ v1.0.1.0 (2009-03-29)  +
+
+ + + + +
 Interface
The stop indicator previously showed in Expert mode, which was not intended. It is now displayed only in Arcade and Normal modes. Additionally, the debug output is now unavailable in Expert mode.
+ + + + +
 Interface
Camera settings are now preserved when changing interior, exterior and track views. The zoom is reset though when switching the views.
+ + + + +
 Interface
The scrolling speed inside the cab has been made slightly slower.
+ + + + +
 Interface
Warning messages are now shown again in openBVE. However, both warning and error messages can now be invidually disabled in the Options menu. Developers are strictly encouraged to leave these settings enabled, though.
+ + + + +
 Interface
A default set of points of interests is now included for every station if the route does not define any points of interest itself.
+ + + + +
 Developing routes
Track positions in RW and CSV routes now require to adhere to the Strict number format. Previously, they were interpreted as Loose, which could mess up the route too much if an invalid statement was interpreted as a track position.
+ + + + +
 Miscellaneous
Some compatibility graphics (needles) have been resaved as 8-bit per channel RGBA in order to appear correctly on Linux.
+ + + + +
 Miscellaneous
The code that applied transparency to the SDL window icon is now only executed on Windows. It could previously crash the program on Linux.
+ + + + +
 Miscellaneous
The sound subsystem can now be deactivated in the options.cfg.
+ + + + +
 Miscellaneous
OpenBve64.exe is now available. It can be used on 64-bit systems that also provide 64-bit versions of the dependencies.
+ + + + +
 Bugfix
Entering the Jump to station menu previously crashed the program with an Index was outside the bounds of the array when the route did not have any stations. The menu entry is not displayed any longer.
+ + + + +
 Bugfix
In animated objects, the leftdoorstarget and rightdoorstarget variables could previously crash the program with an Index was outside the bounds of the array message, or these variables simply didn't work correctly.
+ + + + +
 Bugfix
In animated objects, texture clamping was disabled and could lead to visual artifacts at the edges of some textures.
+
+
+ v1.0.0.0 (2009-03-23)  +
+
+ + + + +
 Interface
Messages about missing support for Windows-only DLL plugins on Linux/Mac are now only generated if the train actually uses a plugin.
+ + + + +
 Interface
If an exception (runtime error) occurs inside a plugin, openBVE now crashes with the name of the plugin being reported.
+ + + + +
 Bugfix
The train toppled and derailed to the wrong side when driving backward.
+
+
+
+ 0.9 series (development)  +
+
+
+
+ v0.9.7.0  +
+
+ + + + +
 Bugfix: Digital gauges (LEDs) appeared incorrectly since 0.9.6.0.
+ + + + +
 Modified some of the ingame-displays, including bringing back old stop indicator and repositioning fps/clock/speed indicators.
+ + + + +
 The AI now drives at 80%-100% of the route speed, depending on a random initial choice. This adds some slight variation to the preceding train.
+
+
+ v0.9.6.0  +
+
+ + + + +
 The in-game displays have been redrawn to result in a hopefully more professional look.
+ + + + +
 Cant (superelevation) is now interpolated between blocks to give a smoother ride.
+ + + + +
 The built-in security systems now cut off power when the doors are not fully closed.
+ + + + +
 The volume of flange sounds has been slightly adjusted.
+ + + + +
 Bugfix: A crash could occur when colliding backward with buffer stop.
+ + + + +
 Fixed a design flaw in the sound manager that could randomly prevent sounds from playing on some sound cards.
+ + + + +
 Compatibility with compressed X files has been improved.
+ + + + +
 Radically improved Linux compatibility. The Filesystem Hierarchy Standard is now also supported. See the Using openBVE pages for more information on this.
+ + + + +
 Slight performance improvements and slightly reduced memory consumption.
+ + + + +
 The setting of the Arcade, Normal and Expert game modes are now preserved.
+ + + + +
 A frame rate command has been introduced as MISC_FPS. The default key combination to show/hide it is CTRL+X.
+
+
+ v0.9.5.5  +
+
+ + + + +
 The default encoding for all routes and trains is now UTF-8. Buttons for the three most commonly used encodings (Latin-1, Shift_JIS and Big-5) have been added to the main menu in order to quickly select these encodings.
+ + + + +
 Custom normals on animated objects are now preserved, allowing for smooth shading on such objects. Previously, smooth shading was not available on animated objects.
+ + + + +
 Bugfix: Cars could run into the front car when the front car was prevented to move by a buffer stop.
+ + + + +
 Bugfix: A series of things relatd to animated objects. Most prominently, the pluginstate variable was affected and did not work correctly.
+
+
+ v0.9.5.0  +
+
+ + + + +
 Door operation can now be set to fully manual, automatic with manual override and fully automatic inside the train.dat. The default behavior is now automatic door operation with manual override.
+ + + + +
 Door opening and closing speeds are now the same as the durations of their respective sound files (if present).
+ + + + +
 The new variables leftdoorstarget and rightdoorstarget are now available in functions (animated objects) in order to query the target state of the doors (compared to the current states of the doors.)
+ + + + +
 The call to the HornBlow function in DLL plugins is now actually made. By accident, it was never implemented before.
+
+
+ v0.9.4.2  +
+
+ + + + +
 Signal.Load can now be used to load animated objects as signals, and Track.SigF to place them. The signalling functionality of Track.FreeObj is now deprecated and will be removed soon.
+ + + + +
 Track.Signal and Track.SigF now all have additional Yaw, Pitch and Roll arguments.
+ + + + +
 Bugfix: Arguments enclosed by parantheses in CSV routes were not recognized whenever a space preceded the argument's parantheses and no other parantheses were used in the same expression.
+ + + + +
 Bugfix: The != operator was not recognized in functions (animated objects).
+
+
+ v0.9.4.0  +
+
+ + + + +
 Animated objects can now be used as train exterior objects, allowing for animated doors, wheels, and via plugins, also for whipers, headlights and more. The new variables distance[i], trackdistance[i], cameradistance and pluginstate[i] have been added.
+ + + + +
 Updated all compatibility signal graphics. The new images are slightly darker than the original ones, have more distinct colors (especially red vs. yellow) and use more photo-realistic textures.
+ + + + +
 Bugfix: The motor sound volumes read from the train.dat was incorrectly applied. Additionally, the volume curve has been further adjusted for compatibility reasons.
+ + + + +
 Bugfix: Train plugins received wrong values regarding brake notches when the train was equipped with a hold brake system. The effect was mainly that the emergency brake could not be applied on those trains.
+ + + + +
 Bugfix: Custom timetable images could appear in the exterior view whenever the timetable was instructed to update but the user was not in the cab.
+ + + + +
 The scoring system has been fine-tuned. The most noticable effect is that lateness, off station stop and overspeed are now less penalized.
+ + + + +
 Added the rev subject to the panel2.cfg in order to allow showing the state of the reverser.
+
+
+ v0.9.3.7  +
+
+ + + + +
 Removed all platform-specific conditional compilation from the source code. The same executable can now be used on all platforms (not tested yet).
+ + + + +
 Adjusted the sound volume curve for motor power and electric brake. The most noticable effect is that lower brake notches now produce louder eletric brake sounds.
+ + + + +
 Adjusted the brake behavior. Some values that were previously not incorporated from the #MOVE section in the train.dat are so now.
+ + + + +
 Added variables for function scripts: speedometer, trackdistance, leftdoors[i], rightdoors[i]. Changed the meanings of speed and distance.
+ + + + +
 Bugfix: The function script optimizer prevented certain combinations of additions and multiplications from producing working code.
+ + + + +
 Bugfix: The Texture.Background(index).Aspect command was not recognized.
+
+
+ v0.9.3.3  +
+
+ + + + +
 Parts of the route parser have been completely rewritten to better account for the many syntactical variations possible in CSV routes and also to better recover from ill-conditions.
+ + + + +
 Bugfix: The route parser crashed when a signal was used before the first station.
+ + + + +
 Bugfix: Departure signals could jump back to red once the train left the station area but did not pass the respective signal yet.
+ + + + +
 Added a version check facility to the main menu. The version check, once clicked, informs the user of possible updates available, but does not automatically download them.
+
+
+ v0.9.3.0  +
+
+ + + + +
 Fixed wrong interpretation of commands in CSV routes when the arguments were enclosed in parantheses and spaces were used in the expression.
+ + + + +
 Changed fog behavior: By default, the fog will now blend from the old settings at the beginning of the block where Track.Fog is used to the new settings at the beginning of the next block. Additionally, the new command Option.FogBehavior allows to switch to a different interpretation where the fog is interpolated between successive Track.Fog commands akin to Track.Brightness.
+ + + + +
 Added subjects in the panel2.cfg: ms (meters/second), mph (miles/hour) and atc. Additionally, the d0, d1, d2, etc. suffixes can now be applied to all subjects.
+ + + + +
 Added commands to the panel.cfg: The Unit key-value pair has been added to the DigitalIndicator section in order to select between kilometers per hour, miles per hour or meters per second for the display.
+ + + + +
 Removed problematic algorithm for brake pipe pressure distribution. For the time being, the brake pipe pressure will be equal on all cars by having the brake pipe pressures from the different cars averaged.
+ + + + +
 Added new default keyboard configuration for notebooks (without keypad). This configuration remaps the keys that are normally assigned to the keypad to other keys instead. The configuration can be imported within the Customize controls tab in the main menu. Please inspect the list of commands to see which keys have been remapped.
+
+
+ v0.9.2.6  +
+
+ + + + +
 The background cylinder has been given top and bottom caps. When the background image changes, the new image will now smoothly fade in.
+ + + + +
 Some admendments to the file formats have been made, including Japanese names for arguments in the panel.cfg, a compatibility fix regarding Track.Rail for route files and some alterations to Option.UnitOfLength and Option.UnitOfSpeed behavior for route files.
+ + + + +
 Slight changes in brake behavior for automatic air brakes; some optimizations for function scripts.
+
+
+ v0.9.2.3  +
+
+ + + + +
 The maximum angle that can be produced for forward/backward shaking has been slightly increased again, but the effect is no longer performed on the train exterior.
+ + + + +
 The effect of boarding passengers has been made less frequent and also less intense.
+ + + + +
 In previous versions, some sounds would play with a seemingly random pitch or gain occasionally and usually non-reproducably, which has been corrected now. The problem resulted from the fact that the sound manager could stop sounds and free their handles if the respective sounds were too far away from the listener or too many sounds were playing at the same time, but the train manager still had a handle to that sound and was trying to modify its pitch or gain, resulting in a change of another sound which had been assigned the just freed handle.
+ + + + +
 In previous versions, some sounds were modified in volume by a quadratic formula which only worked in the range from 0 to 1. As openBVE uses some sort of high dynamic range volume, occasionally volumes higher than 1 are encountered and incorrectly modified, forcing such high-volume sounds to become essentially mute instead. This has been resolved by not making use of such quadratic formulas any longer.
+
+
+ v0.9.2.2  +
+
+ + + + +
 The forward/backward shaking has been made faster, while the maximum angle that can be produced has been reduced.
+ + + + +
 If a route file referenced objects without file extensions, files of B3D, CSV and X types would be looked for in this order. This caused some signals to not load correctly if both an X file and B3D/CSV files of the same base name were present in the respective folder, but the developer intended to load the X file for the signal. As such, the precedence order is now reversed so that X files are looked for first, then CSV and finally B3D.
+
+
+ v0.9.2.1  +
+
+ + + + +
 Passenger comfort now depends on how much the train is crowded (Jam parameter in Track.Sta)
+ + + + +
 Removed in-game debug output that was not intended to show up in the public release.
+
+
+ v0.9.2.0  +
+
+ + + + +
 The train now shakes forward/backward on excessive change of acceleration.
+ + + + +
 The train now shakes left/right as a result of passenger boarding at stations.
+ + + + +
 Jerk regulation is now used for both motor power and motor brake, leading to gentler changes in acceleration.
+ + + + +
 Animated scenery objects have been introduced and can be used by route developers mostly just as static objects.
+ + + + +
 Rewritten geometric transformations in the route loading process have fixed some alignment issues and also speed up the loading process slightly.
+ + + + +
 Bugfix: The panel2.cfg parser inverted the yaw, so that the driver would be looking left instead of right or vice versa.
+ +
+
+ + \ No newline at end of file --- openbve-1.2.5.2.orig/debian/openbve.dirs +++ openbve-1.2.5.2/debian/openbve.dirs @@ -0,0 +1,3 @@ +usr/share/doc/openbve/ +usr/lib/openbve/ +usr/games --- openbve-1.2.5.2.orig/debian/openbve.6 +++ openbve-1.2.5.2/debian/openbve.6 @@ -0,0 +1,122 @@ +.\" Hey, EMACS: -*- nroff -*- +.\" First parameter, NAME, should be all caps +.\" Second parameter, SECTION, should be 1-8, maybe w/ subsection +.\" other parameters are allowed: see man(7), man(1) +.TH OPENBVE 6 "5 April 2009" OpenBVE +.\" Please adjust this date whenever revising the manpage. +.\" +.\" Some roff macros, for reference: +.\" .nh disable hyphenation +.\" .hy enable hyphenation +.\" .ad l left justify +.\" .ad b justify to both left and right margins +.\" .nf disable filling +.\" .fi enable filling +.\" .br insert line break +.\" .sp insert n+1 empty lines +.\" for manpage-specific macros, see man(7) +.SH "NAME" +OpenBVE \- train/railway simulator and game +.SH "SYNOPSIS" +\fBopenbve\fR [\fB/route=\fIroute.csv\fR] [\fB/train=\fIdirectory\fR] [\fB/controls\fR|\fB/newgame\fR|\fB/options\fR|\fB/review\fR] + +.br +.SH "DESCRIPTION" +OpenBVE is a realistic rail simulator. + +The driving simulation is restricted to following a pre-determined loaded route, with +the focus being on the realism of the train driving experience. +OpenBVE also has an \fIArcade\fR mode where driving style and timetable-keeping +affect a running score. + +The simulator is backwards compatible with existing 'BVE Trainsim' +route and train datafiles, which are readily available for no cost. It +is cross-platform using CLI and Mono. + +.br +.SH "GETTING STARTED" +To move the train, you need to do the following (with the default keyboard settings): + +\fBf\fR Move the \fIreverser\fR to the forwards position. (Opposite is \fBv\fR). +.br +\fB,\fR Release the \fIbrake\fR one notch; will be required 4-8 times before movement. (Opposite is \fB.\fR). +.br +\fBz\fR Increase the \fIregulator\fR (power) one notch; may be required 1-2 times before movement. (Opposite is \fBq\fR). + +The major controls keys are arranged closely together +\fBq\fR-\fBa\fR-\fBz\fR for power control; \fB,\fR-\fB.\fR (comma and full-stop) +for braking and \fBf\fR-\fBv\fR for forwards/backwards direction. +Some electric trains have a combined accelerator+brake with a coast +(neutral) in the centre. This is controlled with just the +\fBq\fR-\fBa\fR-\fBz\fR combination (and +forwards/backwards). Pressing the \fBa\fR key moves the controller one notch +closer to the coast/idle positioh, regardless of whether in power or braking mode. + +\fBReturn\fR/\fBShift-Return\fR operate the horn. Keys \fBF1\fR-\fBF5\fR select alternative camera angles. +\fBC-r\fR unlocks the camera to allow free movement (\fBr\fR to reset). A large number of other keys exist +for interacting with complex signalling systems and operating the passenger doors whilst +in a station. Most routes have a supplied timetable that can be displayed by pressing \fBC-t\fR. + +.SH "LAPTOPS" +For laptops/notebooks, there is an alternate keyboard mapping (called "Default keyboard +assignment for Notebooks.controls"), which can be imported +via the \fICustomise Controls\fR tab. The basic keys are the same, +but camera controls are moved off the numeric keypad. + +.br +.SH "OPTIONS" +.TP +\fB/controls\fR +Show Customise Controls screen; keyboard/mouse/joystick selection. +.TP +\fB/newgame\fR +Show Filemanager/route selector screen; choose activity (default). +.TP +\fB/options\fR +Show Options screen; display and quality settings. +.TP +\fB/review\fR +Show Review performance; score and incident log from previous activity. +.TP +\fB/route=\fIsomeroute.csv\fR +Path to the file with the route file ending \fI.csv\fR or \fI.rw\fR which describes the track, scenery and time-table. +.TP +\fB/train=\fItrain.dat\fR +A train/cab. This should be a path to the directory, which contains the \fItrain.dat\fR description for the locomotive, train or cab. + +.SH "DATAFILES" +Two elements are required, a route, and a train (often just a cab view +and performance metrics). These can be selected using the +filemanager after OpenBVE is started. Most routes have a +corresponding recommended train (for instance a particular model of Tube train on the +London Underground); if this train is located it will be selected by +default. + +.br +.SH "FILES" +.TP +\&~/.config/OpenBve/ +Saved keyboard configuration, display settings and score log. +.TP +/usr/share/games/bve/\fBTrain/\fR +Default location for packaged train directories (containing \fItrain.dat\fR). +.TP +/usr/share/games/bve/\fBRailway/Route/\fR +Default location for packaged railway route \fI.csv\fR files. +.TP +/usr/shares/games/openbve/data/ +Data used by OpenBVE to start up. + +.br +.SH "AUTHOR" +.TP +OpenBVE was written by Michelle Boucquemont and placed in the public domain. +.TP +This manual page was written for Debian/Ubuntu by Paul Sladen + +.br +.SH "SEE ALSO" +Website: +.BR http://openbve.trainsimcentral.co.uk/ +.br + --- openbve-1.2.5.2.orig/debian/openbve.docs +++ openbve-1.2.5.2/debian/openbve.docs @@ -0,0 +1,7 @@ +debian/licence-background.txt +debian/known-issues.txt +debian/routes-and-trains.txt +debian/changelog.html +debian/releasenotes.html +debian/README.Debian +debian/NEWS.Debian --- openbve-1.2.5.2.orig/debian/NEWS.Debian +++ openbve-1.2.5.2/debian/NEWS.Debian @@ -0,0 +1,36 @@ +openbve (1.2.4.1-0ubuntu1) lucid; urgency=low + + Openbve now uses a home-grown .wav parser for loading audio files. + + The older SDL/Alut sound loader would transparently load Ogg Vorbis; + as a consequence of this no longer working the default train and + route data packages have been rebuilt without a Vorbis recompression + stage and so are now larger in download size. + + -- Paul Sladen Wed, 6 Jan 2009 07:58:00 +0000 + +openbve (1.2.1.3-0ubuntu1) unreleased; urgency=low + + A marker at the front of first car is now used for + signalling/platform positioning, rather than first axle or "beacon + receiver" offset. this should allow the removal of workarounds in + route/train models. + + The "defaultexterior" configuration option has been removed by + upstream. It is now always true and a version of the basic "model" + from 'Data/Compatibility/exterior.csv' is used as the default 3D + representation for the train in semi-invisible train front (the + "pre-train")---this model is expected to be a unit cube, that is + then scaled to the anticipated train height/width/length. + + The default (unspecified) train data has been adjusted: + + CarHeight 3.2 metres -> 3.6 metres + + AerodynamicDragCoefficient 1.2 -> 1.1 + + CenterOfGravityHeight 1.5 metres -> 1.6 metres + + Others: + * Boolean 'World.MouseGrabIgnoreOnce' used for working around Sdl.SDL_WM_GrabInput() bug. + * Huge churn from renaming "SecuritySystem" to "SafetySystem". + * debugCheckError() renamed to CheckForOpenGlError(). + + -- Paul Sladen Tue, 1 Sep 2009 14:40:00 +0100 --- openbve-1.2.5.2.orig/debian/openbve.manpages +++ openbve-1.2.5.2/debian/openbve.manpages @@ -0,0 +1,2 @@ +debian/openbve.6 + --- openbve-1.2.5.2.orig/debian/copyright +++ openbve-1.2.5.2/debian/copyright @@ -0,0 +1,50 @@ +This package was Debianised by Paul Sladen +on 2009-02-16 00:12 +0200 + +It was downloaded from: + http://openbve.trainsimcentral.co.uk/downloads.html + +Upstream authors: + Michelle Boucquemont + +Copyright: + Copyright 2008-2010 Michelle Boucquemont + Copyright 2009-2010 Paul Sladen (Debian packaging) + + From 'Readme.txt': + + Dedication to the public + + This program is dedicated to the public. I do not pose any + restrictions or requirements on how this material can be used, and + explicitly encourage redistribution and modification for any + purpose. + + From 'http://openbve.trainsimcentral.co.uk/index.html': + + Dedication to the public + + This program, along with all website content, is dedicated to the + public. I do not pose any restrictions or requirements on how this + material can be used, and explicitly encourage redistribution and + modification for any purpose. + + More information on the thinking behind the "license free" intend has been + saved and included in the 'debian/licence-background.txt' file: + + Post by michelle on Sat, 14th Feb 2009, 18:00, UTC + + I have been approached by some individuals over the time, including + from the GNU project and the Ubuntu Foundation (as it appears at + least), and was told that they lack a means of "legal security" for + reuse without an explicit license. You can read my above post on + details about my attitude regarding this matter, but as a start, I + have decided to put the following line on the homepage and will also + include it in any later release: + + " This program, along with all documentation provided, is dedicated + to the public. I do not pose any restrictions on how this material + can be used, and explicitly encourage redistribution and + modification for any purpose. " + + Any Debian-packaging additions are hereby placed into the Public Domain. --- openbve-1.2.5.2.orig/openBVE/OpenBve/OpenBve.csproj +++ openbve-1.2.5.2/openBVE/OpenBve/OpenBve.csproj @@ -34,7 +34,7 @@ prompt 4 false - false + True False --- openbve-1.2.5.2.orig/openBVE/OpenBve/Program.cs +++ openbve-1.2.5.2/openBVE/OpenBve/Program.cs @@ -1,6 +1,7 @@ using System; using Tao.OpenGl; using Tao.Sdl; +using System.Threading; using System.Windows.Forms; namespace OpenBve { @@ -16,6 +17,15 @@ internal const ProgramType CurrentProgramType = ProgramType.OpenBve; private static bool SdlWindowCreated = false; + internal static void WatchdogExit() + { + int delay = 5000; // milliseconds + Console.Error.WriteLine("WatchdogExit: starting timer"); + System.Threading.Thread.Sleep(delay); + Console.Error.WriteLine("WatchdogExit: Something did not shutdown quickly enough, forcing exit"); + Environment.FailFast("WatchdogExit: Something did not shutdown quickly enough, forcing exit"); + } + // main [STAThread] internal static void Main(string[] Args) { @@ -68,6 +78,13 @@ if(SdlWindowCreated & Interface.CurrentOptions.FullscreenMode) { Sdl.SDL_SetVideoMode(Interface.CurrentOptions.WindowWidth, Interface.CurrentOptions.WindowHeight, 32, Sdl.SDL_OPENGL | Sdl.SDL_DOUBLEBUF); } + + // Start a watchdog timer, so that even if SDL/OpenAL hang freeing buffers, + // the program will still successfully force a quit. + Thread Watchdog = new Thread(new ThreadStart(WatchdogExit)); + Watchdog.IsBackground = true; + Watchdog.Start(); + Renderer.Deinitialize(); TextureManager.UnuseAllTextures(); Asynchronous.Deinitialize(); @@ -87,6 +104,7 @@ } System.Diagnostics.Process.Start(Assembly.Location, RestartProcessArguments); } + Environment.Exit(0); } // get exception text --- openbve-1.2.5.2.orig/openBVE/OpenBve/Renderer.cs +++ openbve-1.2.5.2/openBVE/OpenBve/Renderer.cs @@ -212,7 +212,7 @@ internal static void RenderScene(double TimeElapsed) { // initialize Gl.glEnable(Gl.GL_DEPTH_TEST); - Gl.glDepthMask(Gl.GL_TRUE); + Gl.glDepthMask(true); int OpenGlTextureIndex = 0; if (World.CurrentBackground.Texture >= 0) { OpenGlTextureIndex = TextureManager.UseTexture(World.CurrentBackground.Texture, TextureManager.UseMode.Normal); @@ -317,7 +317,7 @@ Gl.glLoadIdentity(); MainLoop.UpdateViewport(MainLoop.ViewPortChangeMode.ChangeToCab); Glu.gluLookAt(0.0, 0.0, 0.0, dx, dy, dz, ux, uy, uz); - Gl.glDepthMask(Gl.GL_TRUE); + Gl.glDepthMask(true); Gl.glClear(Gl.GL_DEPTH_BUFFER_BIT); if (!LightingEnabled) { Gl.glEnable(Gl.GL_LIGHTING); LightingEnabled = true; @@ -334,7 +334,7 @@ if (!BlendEnabled) { Gl.glEnable(Gl.GL_BLEND); BlendEnabled = true; } - Gl.glDepthMask(Gl.GL_FALSE); + Gl.glDepthMask(false); SetAlphaFunc(Gl.GL_GREATER, 0.0f); SortPolygons(AlphaList[1], AlphaListCount[1], AlphaListDistance[1], 6, TimeElapsed); for (int i = 0; i < AlphaListCount[1]; i++) { @@ -348,7 +348,7 @@ Gl.glDisable(Gl.GL_BLEND); BlendEnabled = false; } Gl.glEnable(Gl.GL_DEPTH_TEST); - Gl.glDepthMask(Gl.GL_TRUE); + Gl.glDepthMask(true); // opaque list for (int i = 0; i < OpaqueListCount[k]; i++) { RenderFace(ref OpaqueList[k][i], cx, cy, cz); @@ -360,10 +360,10 @@ Gl.glEnable(Gl.GL_BLEND); BlendEnabled = true; } for (int i = 0; i < TransparentColorListCount[k]; i++) { - Gl.glDepthMask(Gl.GL_FALSE); + Gl.glDepthMask(false); SetAlphaFunc(Gl.GL_LESS, 1.0f); RenderFace(ref TransparentColorList[k][i], cx, cy, cz); - Gl.glDepthMask(Gl.GL_TRUE); + Gl.glDepthMask(true); SetAlphaFunc(Gl.GL_EQUAL, 1.0f); RenderFace(ref TransparentColorList[k][i], cx, cy, cz); } @@ -383,19 +383,19 @@ int r = (int)ObjectManager.Objects[AlphaList[k][i].ObjectIndex].Mesh.Faces[AlphaList[k][i].FaceIndex].Material; if (ObjectManager.Objects[AlphaList[k][i].ObjectIndex].Mesh.Materials[r].BlendMode == World.MeshMaterialBlendMode.Additive) { if (depthMask) { - Gl.glDepthMask(Gl.GL_FALSE); + Gl.glDepthMask(false); depthMask = false; } SetAlphaFunc(Gl.GL_GREATER, 0.0f); RenderFace(ref AlphaList[k][i], cx, cy, cz); } else { if (depthMask) { - Gl.glDepthMask(Gl.GL_FALSE); + Gl.glDepthMask(false); depthMask = false; } SetAlphaFunc(Gl.GL_LESS, 1.0f); RenderFace(ref AlphaList[k][i], cx, cy, cz); - Gl.glDepthMask(Gl.GL_TRUE); + Gl.glDepthMask(true); depthMask = true; SetAlphaFunc(Gl.GL_EQUAL, 1.0f); RenderFace(ref AlphaList[k][i], cx, cy, cz); @@ -405,7 +405,7 @@ if (!BlendEnabled) { Gl.glEnable(Gl.GL_BLEND); BlendEnabled = true; } - Gl.glDepthMask(Gl.GL_FALSE); + Gl.glDepthMask(false); SetAlphaFunc(Gl.GL_GREATER, 0.0f); for (int i = 0; i < AlphaListCount[k]; i++) { RenderFace(ref AlphaList[k][i], cx, cy, cz); @@ -414,7 +414,7 @@ // motion blur if (k == 0) { Gl.glDisable(Gl.GL_DEPTH_TEST); - Gl.glDepthMask(Gl.GL_FALSE); + Gl.glDepthMask(false); SetAlphaFunc(Gl.GL_GREATER, 0.0f); if (Interface.CurrentOptions.MotionBlur != Interface.MotionBlurMode.None) { if (LightingEnabled) { --- openbve-1.2.5.2.orig/openBVE/OpenBve/Loading.cs +++ openbve-1.2.5.2/openBVE/OpenBve/Loading.cs @@ -50,10 +50,8 @@ while (true) { string Subfolder = Interface.GetCombinedFolderName(Folder, "Railway"); if (System.IO.Directory.Exists(Subfolder)) { - string a = Interface.GetCombinedFolderName(Folder, "Train"); - if (System.IO.Directory.Exists(a)) { - return Subfolder; - } + /* Checking for the "Train" folder is unnecessary, as it is not used later */ + return Subfolder; } System.IO.DirectoryInfo Info = System.IO.Directory.GetParent(Folder); if (Info == null) break; @@ -87,7 +85,7 @@ private static void LoadEverythingThreaded() { string RailwayFolder = GetRailwayFolder(CurrentRouteFile); if (RailwayFolder == null) { - Interface.AddMessage(Interface.MessageType.Critical, false, "The Railway and Train folders could not be found in any of the route file's parent directories. Please check your folder structure."); + Interface.AddMessage(Interface.MessageType.Critical, false, "The Railway folder could not be found in any of the route file's parent directories. Please check your folder structure."); return; } string ObjectFolder = Interface.GetCombinedFolderName(RailwayFolder, "Object"); --- openbve-1.2.5.2.orig/openBVE/OpenBve/formMain.cs +++ openbve-1.2.5.2/openBVE/OpenBve/formMain.cs @@ -168,11 +168,23 @@ textboxRouteFolder.Text = Interface.CurrentOptions.RouteFolder; } else { textboxRouteFolder.Text = Interface.GetPersonalFolder(); + // For Debian/Ubuntu, the location for the packaged trains+routes is /usr/share/games/bve/* + // since these are optional, check if it has been created (installed) by another package instead of ~/ + string s = Environment.GetFolderPath( Environment.SpecialFolder.CommonApplicationData ) + "/games/bve/Railway/Route"; + if (Program.CurrentPlatform == Program.Platform.Linux && System.IO.Directory.Exists(s)) { + textboxRouteFolder.Text = s; + } } if (Interface.CurrentOptions.TrainFolder.Length != 0 && System.IO.Directory.Exists(Interface.CurrentOptions.TrainFolder)) { textboxTrainFolder.Text = Interface.CurrentOptions.TrainFolder; } else { textboxTrainFolder.Text = Interface.GetPersonalFolder(); + // For Debian/Ubuntu, the location for the packaged trains+routes is /usr/share/games/bve/* + // since these are optional, check if it has been created (installed) by another package instead of ~/ + string s = Environment.GetFolderPath( Environment.SpecialFolder.CommonApplicationData ) + "/games/bve/Train"; + if (Program.CurrentPlatform == Program.Platform.Linux && System.IO.Directory.Exists(s)) { + textboxTrainFolder.Text = s; + } } // encodings { @@ -1828,7 +1840,7 @@ private void buttonControlsImport_Click(object sender, EventArgs e) { OpenFileDialog Dialog = new OpenFileDialog(); Dialog.CheckFileExists = true; - Dialog.InitialDirectory = Interface.GetControlsFolder(); + Dialog.InitialDirectory = Interface.GetDataFolder("Controls"); Dialog.Filter = Interface.GetInterfaceString("dialog_controlsfiles") + "|*.controls|" + Interface.GetInterfaceString("dialog_allfiles") + "|*"; if (Dialog.ShowDialog() == DialogResult.OK) { try { --- openbve-1.2.5.2.orig/openBVE/OpenBve/Parsers/CsvRwRouteParser.cs +++ openbve-1.2.5.2/openBVE/OpenBve/Parsers/CsvRwRouteParser.cs @@ -1703,7 +1703,13 @@ Data.TimetableDaytime[i] = -1; } } - string f = Interface.GetCombinedFileName(TrainPath, Arguments[0]); + /* Hack: try something in the Route's hierarchy first; not sure + ** what the clean way to do this would be... Also this is the only + ** (mis-)use? of Trainpath whilst parsing a Route */ + string f = Interface.GetCombinedFileName(ObjectPath, Arguments[0]); + if(!System.IO.File.Exists(f)) { + f = Interface.GetCombinedFileName(TrainPath, Arguments[0]); + } if (System.IO.File.Exists(f)) { Data.TimetableDaytime[CommandIndex1] = TextureManager.RegisterTexture(f, TextureManager.TextureWrapMode.ClampToEdge, TextureManager.TextureWrapMode.ClampToEdge, true); TextureManager.UseTexture(Data.TimetableDaytime[CommandIndex1], TextureManager.UseMode.Normal); @@ -1730,7 +1736,13 @@ Data.TimetableNighttime[i] = -1; } } - string f = Interface.GetCombinedFileName(TrainPath, Arguments[0]); + /* Hack: try something in the Route's hierarchy first; not sure + ** what the clean way to do this would be... Also this is the only + ** (mis-)use? of Trainpath whilst parsing a Route */ + string f = Interface.GetCombinedFileName(ObjectPath, Arguments[0]); + if(!System.IO.File.Exists(f)) { + f = Interface.GetCombinedFileName(TrainPath, Arguments[0]); + } if (System.IO.File.Exists(f)) { Data.TimetableNighttime[CommandIndex1] = TextureManager.RegisterTexture(f, TextureManager.TextureWrapMode.ClampToEdge, TextureManager.TextureWrapMode.ClampToEdge, false); TextureManager.UseTexture(Data.TimetableNighttime[CommandIndex1], TextureManager.UseMode.Normal);