Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Author Topic: Trevor Chan's Virtual U  (Read 2700 times)

ndkid

  • Bay Watcher
  • Player of Games
    • View Profile
Trevor Chan's Virtual U
« on: May 21, 2014, 11:34:47 pm »

Hey All.

So, I'm a bit of a sucker for management simulations of pretty much any variety. Sports, business, mercenary groups, space civilizations... if they need someone to balance the books and make the big decisions, I'll play it.

Over the years, Trevor Chan and Enlight Software have put out a pile of games in this category, from Capitalism 2 to Restaurant Empire 2. One of the lesser known of the bunch is Virtual U, where you are put in charge of running an American university, trying to keep the alumni happy and generous while not having faculty made up entirely of old white men, etc, etc. Virtual U was first released around the turn of the millennium. Around 2002, they released the source code with a pretty permissive (but not quite boiler plate) license. I think I downloaded the source back then, and determined that the original authors were using a C++ compiler far more permissive than my own, was intimidated by the resulting 1,000 build errors, and moved on. Recently, I began remembering Virtual U fondly again, and decided to go download the source and see if my decade of programming experience since it first went public would have changed my perspective. Sadly, the original website that hosted it was gone. Undeterred, I hopped over to the wayback machine and got my hands on both the main game installer and the source code.

I've spent the past week or so getting the source code building in VS2013, then removing a bunch of old switches in the code that were meant to allow it to continue to build the 1.0 and the 2.0 versions. So, now it feels like it's time to at least get the source code back online in an easily accessible form, and maybe do some more care and feeding.

To that end, I've created a space for it over at google code: https://code.google.com/p/virtualu/
I've also stuck the most recently patched game installer up in my google drive, since I wasn't sure how easy that was to find online anymore: https://drive.google.com/file/d/0B1R6V1WHPZRkSnZsVko0NDNnN0E

Right now, it's still a bit of a mess on modern rigs. I find I have to force the exe to shut down, because I just get a black screen when I click its quit button. I'm pretty sure it has crashing issues. So, some of my near-term goals are doing some general code cleanup (it's pretty obvious whoever wrote it came from a quick-and-dirty C background... looking at the code makes me grateful for more modern languages and branching strategies than they had in place when this was written), and hopefully get the program running in windowed mode rather than its current hardcoded 4:3 low-resolution fullscreen mode.

I welcome anyone's advice, big reports, assistance, etc. While I trust my coding skills, I'm an absolute DirectX neophyte (I'm partially using this as a way to see some real-world DirectX 2D examples), and I know from experience with myself that I'm far, far more likely to maintain momentum when I'm working with others compared to when I'm flying solo. If nothing else, maybe someone out there has never seen Virtual U before, and finds it to be in their wheelhouse.
Logged

Glloyd

  • Bay Watcher
  • Against the Tide
    • View Profile
Re: Trevor Chan's Virtual U
« Reply #1 on: May 21, 2014, 11:43:46 pm »

Heh, I seem to remember having fun with Capitalism 2. I'll probably take a look at this when I have a chance. Only know a smattering of C++ though, so I doubt I could help much. Still, pretty great that you're dredging this up, good luck!

nenjin

  • Bay Watcher
  • Inscrubtable Exhortations of the Soul
    • View Profile
Re: Trevor Chan's Virtual U
« Reply #2 on: May 21, 2014, 11:45:13 pm »

Ah man, this gives me warm fuzzies. Not even the attachment to the games or anything, just the willingness to spend time salvaging digital relics and getting them back out there to the peoples. Your effort is appreciated good sir, even if I never d/l a working copy of it.
Logged
Cautivo del Milagro seamos, Penitente.
Quote from: Viktor Frankl
When we are no longer able to change a situation, we are challenged to change ourselves.
Quote from: Sindain
Its kinda silly to complain that a friendly NPC isn't a well designed boss fight.
Quote from: Eric Blank
How will I cheese now assholes?
Quote from: MrRoboto75
Always spaghetti, never forghetti

h3lblad3

  • Bay Watcher
    • View Profile
Re: Trevor Chan's Virtual U
« Reply #3 on: May 22, 2014, 10:49:22 am »

It's no Capitalism 2, but I'll take it!

I think I've even played it once, years and years ago.
Good on you, Savior of the Olde!
Logged
I was talking about importing alimunim.
And we were hypothesising about the sexual relations between elves and trees.

dennislp3

  • Bay Watcher
    • View Profile
Re: Trevor Chan's Virtual U
« Reply #4 on: May 22, 2014, 01:35:23 pm »

I remember this from years ago...so glad to see it though
Logged

Empty

  • Bay Watcher
    • View Profile
Re: Trevor Chan's Virtual U
« Reply #5 on: May 22, 2014, 02:04:36 pm »

God this game is complicaated. Is there a manual?
Logged

Mictlantecuhtli

  • Bay Watcher
  • Grinning God of Death
    • View Profile
Re: Trevor Chan's Virtual U
« Reply #6 on: May 22, 2014, 02:20:03 pm »

Thank you for doing this! Keep it up!
Logged
I am surrounded by flesh and bone, I am a temple of living. Maybe I'll maybe my life away.

Santorum leaves a bad taste in my mouth,
Card-carrying Liberaltarian

ptb_ptb

  • Bay Watcher
    • View Profile
Re: Trevor Chan's Virtual U
« Reply #7 on: May 22, 2014, 03:38:11 pm »

Is there a pause button?
Logged
()==[:::::::::::::>

ndkid

  • Bay Watcher
  • Player of Games
    • View Profile
Re: Trevor Chan's Virtual U
« Reply #8 on: May 22, 2014, 11:07:00 pm »

Courtesey of the wayback machine, here's their documentation page as of 2008 (I promise, it didn't get updated after that), including links to a flash tutorial, a strategy guide, and the manual. (I suspect all those links still work via wayback, but I haven't tried them.)
https://web.archive.org/web/20080513143509/http://virtual-u.org/documentation/index2.asp
Logged

ndkid

  • Bay Watcher
  • Player of Games
    • View Profile
Re: Trevor Chan's Virtual U
« Reply #9 on: May 22, 2014, 11:31:01 pm »

In other news, the plan I'm currently mulling is seeing how successfully I could move the Virtual U codebase over to Unity. My day jobs have had C# development for the last nine years or so (whereas it was lots of C++ before that), so moving over to Unity's Mono-based scripting would feel good. The problem, of course, is that I almost (but not quite) nothing about the visual side of things. The upside is that the graphical load of Virtual U isn't exactly major. :-) And having a version of Virtual U that can run on non-Windows operating systems just seems more polite to the community, not to mention more likely to generate interest from other people to chip in some time on the project.

I'm imagining doing this in phases.
- Phase I would be moving the current code over to C# with minimal modification to structure and still leaving it as an x86 app using DirectX.
- Phase II would be moving that over to Unity and dealing with what the switch from DirectX to Unity entails.
- Phase III would be an architectural refactor, where I make the codebase more to my object-oriented liking, document it better, etc, etc.

Assuming I'm not a member of the walking dead tomorrow morning, I'll start in on Phase I tomorrow on the train ride to work, and see how painful it is. (I may do a search before I go to bed tonight to see if there's an automatic C++ -> C# generator out there... seems like the sort of tool someone would have written.)
Logged

h3lblad3

  • Bay Watcher
    • View Profile
Re: Trevor Chan's Virtual U
« Reply #10 on: October 05, 2014, 02:56:53 am »

How goes this project, anyway, ndkid?
Logged
I was talking about importing alimunim.
And we were hypothesising about the sexual relations between elves and trees.