BookmarkSubscribeRSS Feed

Wolfensäs: The FPS game that was written in SAS

Started ‎12-07-2023 by
Modified ‎12-07-2023 by
Views 4,813

In 2008, SAS programmer Mark Paschalidis made this announcement on the SAS-L mailing list:

For a while now I've been working on an interesting side project in my spare time, \
and it has reached a stage where I think it's worth showing to the SAS world at \
large.

It's called Wolfensas; yes, it's a game, and the name is a complete giveaway!  It's \
even multi-player over a network.  It has been developed in and for SAS 8.2 under \
WinXP, although it should work fine with newer versions of both.

Based on the popular first-person shooter game Wolfenstein 3D, it's fair to say that this SAS application pushed the boundaries of SAS in new ways.

 

Here's a screenshot provided by Mark:

 

texqual_0.png

 

The game assets include over 5,000 lines of SAS code over 14 files, plus dozens of graphics and sound files. The SAS code has fun-sounding macro routines such as %addwallsmoke and %drawprojectiletracers. It would take me a long time of studying this code to understand it, but it's fun to look through and admire the effort.

 

Wolfensas project codeWolfensas project code  

Running Wolfensäs today

Recently I installed SAS for Windows on a new machine, but I accidentally selected the 32-bit version of SAS instead of the 64-bit version. Realizing my mistake, it occurred to me that this gave me the unexpected opportunity to test whether the game still works 15 years later using SAS 9.4 on Windows 11. See the results for yourself:

ChrisHemedinger_0-1701974286012.gif

 

Ironically, the graphics don't look quite as good on my modern machine with a 16:9 screen ratio and high resolution, but the mechanics still work (and the sound too!).

 

As of this writing the code for Mark's game is still available on his website, http://wolfensas.subshock.net/. The instructions are clear and easy to follow; however, I suspect that very few of today's SAS users will be able to run it. The game code has many architecture-specific elements, including direct access into application memory using CALL POKE and some system calls via CALL MODULEN. These techniques were coded to work only in the 32-bit version of SAS on Windows. Most SAS for Windows users today are running 64-bit SAS.

 

(And if you're using SAS Studio or SAS Enterprise Guide...well, that's a non-starter. The game relies completely on the SAS windowing interface, available only with a local install of SAS.)

 

Comments

I thought that the SAS/AF examples were the only video games anyone had developed in SAS though I suspect video poker and black-jack are tad easier as there isn't any real movement involved.

Richard DeVenezia developed  a Tetris game in SAS/AF.   I just tried it and it still works .

Oh yeah, sure does! Thanks @JimLoughlin and way to write an app with staying power, @RichardDeVen 

ChrisHemedinger_0-1702061986769.png

 

Truly amazing!

 

It proves once again it's never a question if something can be done in SAS but how.

 

I once wrote an AF app for a slotmachine as an exercise and to get used to the new HP Apollo. Send it in in response to a call for games at SUGI in New York. 

 

Before the opening I was asked to meet Dr. Goodnight. He told me he would demo it in the opening session. He did. And again the next year in Dallas. And it became part of SAS/Assist. A little code can go a long way! But nothing like this FPS. Or Tetris.

This is truly intriguing! 😂

interesting !

Version history
Last update:
‎12-07-2023 01:55 PM
Updated by:
Contributors

SAS Innovate 2025: Save the Date

 SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!

Save the date!

Free course: Data Literacy Essentials

Data Literacy is for all, even absolute beginners. Jump on board with this free e-learning  and boost your career prospects.

Get Started

Article Labels
Article Tags