Jump to content


Photo

Starcraft


  • Please log in to reply
296 replies to this topic

#1 OFFLINE   notaz

notaz

    Advanced Member

  • Official OpenPandora Team
  • PipPipPip
  • 2341 posts
  • Local time: 06:54 PM

Donator

Posted 04 March 2014 - 08:31 PM

Awaken my child, and embrace the glory that is your birthright. Know that I am the Overmind; the eternal will of the Swarm, and that you have been created to serve me.

 
It's on the repo.
 
You'll need full installation of Brood War from PC with latest 1.16.1 patch applied. It also needs to have required files copied from CD (1.16.1 removed CD checks, but doesn't automatically install all required files):
- copy "INSTALL.EXE" from the StarCraft CD to your StarCraft folder and rename it to "StarCraft.mpq
- copy "INSTALL.EXE" from the StarCraft: Brood War CD to your StarCraft folder and rename it to "BroodWar.mpq"

You should try the game on PC without CD first, if that works, you're ready to copy the game's folder to pandora/appdata , the folder should be named "starcraft".


So a Starcraft port? Sort of..

The "no source, no port" rule is not completely true, you can get something similar (but not the same) as a port through static recompilation. Similar stuff was done several times by M-HT for some DOS games. The game was also converted for Android with somewhat similar approach.

So how does it work? The game was fully disassembled with IDA, then converted from x86 disassembly to C with my custom tools that I wrote as the project progressed, then compiled as a normal program and linked against ARM winelib (so the Win32 API is provided by ARM port of wine). Sounds easy? The hell not! I've started it sometime in autumn and was hoping to have something after a month or so, but it was far from working at the time of New Year. Then tried to target the Alive compo, but that slipped too. There were way too many problems and things that I did not expect.. Maybe I'll write about it someday. Would I do it with another game? Maybe not, let's just say "no source, no port" rule is always true and Windows games should be handled through emulation, static recompilation is possible but way too problematic in practice.

However in the end I think it works quite well, give it a try. It should be close to how "real" port would work, there is no emulation anywhere. There is a bit of overhead in 8bpp -> 16bpp conversion, but it's not too bad. The game likes to eat CPU even when it doesn't really need it, so it might make sense to underclock sometimes.

Known bugs in b6:

none

 

old bugs:
- custom scenarios are broken
- when playing as terran, attempting to land a building will crash the game
- first protoss mission (from expansion) crashes

Edit: wine is hacked a bit, I've pushed out the changes to github:
http://github.com/no...e/pandora_hacks


Edited by notaz, 09 March 2014 - 09:00 PM.


#2 OFFLINE   rohezal

rohezal

    Advanced Member

  • Members
  • PipPipPip
  • 1229 posts
  • Local time: 03:54 PM

Posted 04 March 2014 - 08:41 PM

I want to marry you!!!! This is more then epic :). May I ask if you will try to fix the landing crash bug? Some campaign missions need you to land buildings.


Open Pandragon. The best Open Pandora 2 so far.


#3 OFFLINE   Sepulep

Sepulep

    Advanced Member

  • Members
  • PipPipPip
  • 139 posts
  • Local time: 04:54 PM

Posted 04 March 2014 - 08:43 PM

oooow...this kind of stuff impresses me most :o



#4 OFFLINE   Linux-SWAT

Linux-SWAT

    Advanced Member

  • Members
  • PipPipPip
  • 6269 posts
  • Local time: 05:54 PM
  • LocationParis, France

Posted 04 March 2014 - 08:45 PM

It's one of my two favorite games !!!

I'll try this right now.

 

Maybe the cpu throttling option (while ingame) may help about cpu eating.



#5 OFFLINE   Shenmue

Shenmue

    Advanced Member

  • Members
  • PipPipPip
  • 2913 posts
  • Local time: 11:54 AM

Donator

Posted 04 March 2014 - 08:48 PM

Oh wow!  You, notaz, have proven lots of people wrong with their "no source no port" rule :)  Thank you.  I will donate just for this effort of yours alone when I get home!  :)

 

Edit:  Donation sent!


Spoiler

#6 OFFLINE   Ziz

Ziz

    Multitasking nagger

  • Members
  • PipPipPip
  • 761 posts
  • Local time: 05:54 PM
  • LocationUtopia

Posted 04 March 2014 - 09:05 PM

This is so awesome, especially the whole approach...

 Post generated in 0.1337 seconds.

I am a leaf on the wind - watch how I soar. Wash
http://ziz.openhandhelds.org

#7 OFFLINE   Linux-SWAT

Linux-SWAT

    Advanced Member

  • Members
  • PipPipPip
  • 6269 posts
  • Local time: 05:54 PM
  • LocationParis, France

Posted 04 March 2014 - 09:08 PM

I put my SC folder in program files, but it said it can't load local.dll .



#8 OFFLINE   NearTao

NearTao

    Advanced Member

  • Members
  • PipPipPip
  • 323 posts
  • Local time: 10:54 AM
  • LocationNew Hampshire

Posted 04 March 2014 - 09:09 PM

Awesome!!!



#9 OFFLINE   PokeParadox

PokeParadox

    Advanced Member

  • Moderators
  • 2073 posts
  • Local time: 04:54 PM

Donator

Posted 04 March 2014 - 09:09 PM

Hahaha... Notaz... you do make me laugh "I'm not working on much for the compo" and then BAM you bring StarCraft to our lovely Pandoras!

Thanks for your work! :)



Tired of the infamous preorder queue? Donate and help get this queue cleared!
Twitter: @PokeParadox
If you like my work, please consider leaving a rating or feedback or donating, every little "thank you" is appreciated!
My Pandora Apps - My Development Blog - Pirate Games


#10 OFFLINE   BAFelton

BAFelton

    Advanced Member

  • Members
  • PipPipPip
  • 577 posts
  • Local time: 05:54 PM

Donator

Posted 04 March 2014 - 09:09 PM

Works fine for me :)

 

:wub:



#11 OFFLINE   Linux-SWAT

Linux-SWAT

    Advanced Member

  • Members
  • PipPipPip
  • 6269 posts
  • Local time: 05:54 PM
  • LocationParis, France

Posted 04 March 2014 - 09:11 PM

In winedata/drive_c/Program files ?



#12 OFFLINE   FaeMinx

FaeMinx

    In-sane littleCreature =^. ~ =

  • Members
  • PipPipPip
  • 2015 posts
  • Local time: 05:54 PM
  • LocationCoffee Bay, South Africa

Donator

Posted 04 March 2014 - 09:15 PM

Holy Crap! O.O

....speechless I tell you...

Words are not enough to express the gratitude and amazement I feel right now.


On a more sober note... will you continue working on this, or will this 'port' forever have the two bugs you mentioned?

Either way this is Oh... My... Fuzzy... Goodness mind blowing.

Installing this first thing tomorrow when I get to work. (Home comp. Motherboard is broken).

Wow.

... The Garden... it's real!! ...
... so be carefull what you feed... o.o

We all want this project to mature, so we have to mature ourselves.


#13 OFFLINE   Linux-SWAT

Linux-SWAT

    Advanced Member

  • Members
  • PipPipPip
  • 6269 posts
  • Local time: 05:54 PM
  • LocationParis, France

Posted 04 March 2014 - 09:29 PM

I tried many combinations, can't make it work :/ :/ :/ .

 

Got it, it's a bit dirty to put all in appdata/starcraft, but np :D .



#14 OFFLINE   TrashyMG

TrashyMG

    Sarcasm Dispenser

  • Moderators
  • 5853 posts
  • Local time: 10:54 AM
  • LocationVermont, USA

Donator

Posted 04 March 2014 - 09:30 PM

^ did you patch it to version 1.16.1?
:wq

#15 OFFLINE   Linux-SWAT

Linux-SWAT

    Advanced Member

  • Members
  • PipPipPip
  • 6269 posts
  • Local time: 05:54 PM
  • LocationParis, France

Posted 04 March 2014 - 09:41 PM

Yup, i finally make it putting everything in the appdata/starcraft/ folder.

 

It runs incredibly fast compared to qemu+win95 !

 

Notaz, Hero above Heroes, Master of the Masters, i hope you'll fix the custom scenarios as it would be awesome to get network play ! (i also have something else in mind, which is the de facto method to connect to korean servers, as bnet is almost dead for sc/bw)



#16 OFFLINE   Klumpen

Klumpen

    Advanced Member

  • Members
  • PipPipPip
  • 2912 posts
  • Local time: 05:54 PM
  • LocationGermany

Donator

Posted 04 March 2014 - 09:52 PM

- When playing as terran, attempting to land a building will crash the game

 

Who plays Terrans anyway? :D

I was Zerg most of the time (zergling rush and lurker traps later on), Protoss sometimes for dark templar ambushes.

 

Any idea if this bug may get fixed?


No Windows here

 


#17 OFFLINE   TrashyMG

TrashyMG

    Sarcasm Dispenser

  • Moderators
  • 5853 posts
  • Local time: 10:54 AM
  • LocationVermont, USA

Donator

Posted 04 March 2014 - 10:23 PM

Need more pylons...
:wq

#18 OFFLINE   Wally

Wally

    King of the Carrot Flowers

  • Moderators
  • 1564 posts
  • Local time: 01:54 AM
  • LocationMelbourne, Australia

Donator

Posted 04 March 2014 - 10:28 PM

You don't suppose Diablo 2 could be.. done the same way? :o



#19 OFFLINE   leathco

leathco

    Advanced Member

  • Members
  • PipPipPip
  • 428 posts
  • Local time: 09:54 AM

Posted 04 March 2014 - 10:45 PM

Wow, I really wasn't expecting this.  I was more of a C and C guy than Starcraft, but with that said this is definately getting slapped on my Pandora.

 

You don't suppose Diablo 2 could be.. done the same way? :o

 

That would be godlike.  I use the PS1 version of Diablo to get my fix when I'm on my Pandora, but D2 on it would be insanity.



#20 OFFLINE   milkshake

milkshake

    Super Advanced Member

  • Members
  • PipPipPip
  • 3067 posts
  • Local time: 04:54 PM
  • LocationRotherham, UK

Posted 04 March 2014 - 10:55 PM

We need a new YouTube video for this :-)
minipandalogo.png Pandora Repo - software for your pandora :)

btn_donate_SM.gif If you like my site/contributions, consider donating.
Prometheus.jpg


4 user(s) are reading this topic

0 members, 4 guests, 0 anonymous users