Author
|
Topic: A star control 1 remake that may actually get finished (Read 49986 times)
|
Dragon
Frungy champion
 
Offline
Posts: 86

|
Whoops, sorry - I forgot about the Mmrnmhrm Y-wing. I found an old picture of it from when I was asking for suggestions on colouring over at remakes, so here it is:

The only change is that I've removed the detail from the wings so it's still pretty similar but with dark pink wing recesses.
And whilst I was digging through old piccys I found a final version of the starmap planets so here it is also 

The little planets in the corner are the starmap versions whilst the big ones are for the event animations and melee game.
|
|
« Last Edit: January 19, 2009, 07:43:37 pm by Dragon »
|
Logged
|
|
|
|
Data
Frungy champion
 
Offline
Gender: 
Posts: 76

|
Wow  Keep up the good work - this is like a dream come true, I actually asked a looooong time ago if anything like this is ever going to be made. Now, your ship models are great, just look, well, differently. However, that is not a bad thing, actually quite the contrary, just expect a lot of people saying how you should have done this or that differently (for example, I would make, if I knew how , Chenjesu a bit bluer and other Alliance ships more colorful, but you really shouldn't listen to me, Really, this isn't a joke, I suck at design) On the other hand, planets look absolutely gorgeous no matter what way you put it. Just, please, please, PLEASE don't give up on the project. Please.
|
|
|
Logged
|
Sig fixed at Shivers request.
|
|
|
Malrunus
Zebranky food

Offline
Posts: 13
|
I tried going to this link to check it out, and it's giving me the 404 error. Has it been moved?
|
|
|
Logged
|
|
|
|
|
Bigryan
Frungy champion
 
Offline
Posts: 56
|
Wow, you are making some really great models. I'm also a hobbiest trying to put together a star control fan game... my models are not half as cool though. Man I'd love to get a hold of some nice models like that for my fan game.
I can't wait to try yours! You've got some mad art skillz.
|
|
|
Logged
|
|
|
|
Dragon
Frungy champion
 
Offline
Posts: 86

|
Alright I've managed a fairly major milestone, only there's a bit of a gotcha. You have to really, really like C++ before you'll appreciate it. So to keep it short I'll just mention that I can successfully preprocess the entire set of windows headers. That's 46 000 lines of code per translation unit (a translation unit is a .cpp file). Feeding the preprocessed source back to a compiler gives *no* errors so I can be fairly certain I haven't missed anything.
If you're asking WTF this has to do with Star Control I can explain. I need the structures (classes and structs) and various function pointers (and calling conventions) so that I can call C++ methods directly from Smalltalk. To do this I need to parse at least some of my own source files - which is easy'ish - but I decided I'd go big and just parse the whole damn lot. And now if you're still wondering what this has to do with Star Control I can explain again. I'm still using Smalltalk as the gameplay language except again I decided to go big and write my own implementation (I may have mentioned my reasons in a previous post - I forget). I'm basically using Star Control Redux to drive the languages development which is why this is taking a little longer than at first anticipated.
For the really, really C++ guys (anyone?) here's the include tree for one of my .cpp source files, open the spoiler to see it 'cause it's kinda long. Just read down to where you see windows.h and then give up.
AdditionalTypes.cpp AdditionalTypes.h ArraySimple.h stdlib.h crtdefs.h sal.h vadefs.h limits.h crtdefs.h string.h crtdefs.h Define.h Shlwapi.h ObjBase.h Rpc.h Windows.h excpt.h crtdefs.h stdarg.h vadefs.h WinDef.h WinNT.h ctype.h crtdefs.h specstrings.h BaseTsd.h Guiddef.h string.h PshPack4.h PopPack.h PshPack4.h PshPack2.h PopPack.h PshPack2.h PshPack2.h PopPack.h PopPack.h PshPack8.h PopPack.h PopPack.h string.h specstrings.h winbase.h WinError.h WinGDI.h PshPack1.h PopPack.h PshPack2.h PopPack.h PshPack2.h PopPack.h PshPack4.h PopPack.h WinUser.h stdarg.h PshPack2.h PopPack.h Tvout.h WinNls.h WinCon.h WinVer.h WinReg.h Reason.h WinNetWk.h StrAlign.h WinSvc.h Mcx.h Imm.h BaseTsd.h RpcDce.h specstrings.h RpcDceP.h RpcNsi.h RpcNtErr.h excpt.h WinError.h RpcAsync.h RpcNdr.h PshPack8.h BaseTsd.h RpcNsip.h PopPack.h PshPack8.h stdlib.h WTypes.h Rpc.h RpcNdr.h BaseTsd.h Guiddef.h Unknwn.h Rpc.h RpcNdr.h Windows.h Ole2.h PshPack8.h WinError.h ObjBase.h OleAuto.h PshPack8.h OAIdl.h Rpc.h RpcNdr.h Windows.h Ole2.h ObjIdl.h Rpc.h RpcNdr.h Windows.h Ole2.h Unknwn.h Rpc.h RpcNdr.h Windows.h Ole2.h WTypes.h PopPack.h OleIdl.h Rpc.h RpcNdr.h Windows.h Ole2.h ObjIdl.h PopPack.h ObjIdl.h Guiddef.h CGuid.h UrlMon.h Rpc.h RpcNdr.h Windows.h Ole2.h ObjIdl.h OleIdl.h ServProv.h Rpc.h RpcNdr.h Windows.h Ole2.h ObjIdl.h MsXml.h Rpc.h RpcNdr.h Unknwn.h ObjIdl.h OAIdl.h PropIdl.h Rpc.h RpcNdr.h Windows.h Ole2.h ObjIdl.h OAIdl.h PopPack.h ShTypes.h Rpc.h RpcNdr.h WTypes.h PshPack1.h PopPack.h PshPack1.h PopPack.h PshPack8.h PopPack.h PshPack1.h PopPack.h PshPack8.h PopPack.h PointerRemapper.h Define.h PointerRemapper.inl ArrayTemplate.h stdlib.h string.h FastMemset.h string.h FastMemset.inl Define.h PointerRemapper.h FastMemcpy.h string.h FastMemcpy.inl ArrayInt.h ArrayTemplate.h DataTypes.h ErrorHandler.h Define.h string.h ErrorTypes.h Chars.h stdlib.h string.h StringHelper.h string.h Define.h ArrayChar.h ArrayTemplate.h DataTypes.h ArrayTemplate.h ArraySimple.h ArrayInt.h ArrayUnknown.h stdlib.h memory.h crtdefs.h string.h DataTypes.h ArrayTemplate.h ArraySimple.h math.h crtdefs.h GeometricTypes.h Define.h ChunkFile.h Define.h ChunkFileNames.h ChunkFileIndex.h ArrayTemplate.h FileExtended.h FileBasic.h stdio.h crtdefs.h swprintf.inl vadefs.h Define.h FileMode.h ArrayTemplate.h ArrayInt.h ArrayUnknown.h ArraySimple.h LinkListTemplate.h stdlib.h DataTypes.h LinkListUnknown.h LinkListTemplate.h TreeTemplate.h stdlib.h memory.h DataTypes.h FreeList.h stdlib.h memory.h IntegerHelper.h Define.h IntegerHelper.inl LinkListUnknown.h DataTypes.h TreeUnknown.h TreeTemplate.h EnumeratorTemplate.h Define.h stdlib.h DataTypes.h ArrayInt.h LinkListTemplate.h Define.h StringHelper.h EnumeratorUnknown.h EnumeratorTemplate.h ErrorTypes.h ArrayTemplate.h
And for those who haven't seen it here's the title screen (pretty pictures are much more interesting than code). Also all the stats screens on flickr as a slideshow.

|
|
« Last Edit: May 13, 2009, 09:50:50 pm by Dragon »
|
Logged
|
|
|
|
Spurk
*Many bubbles*
  
Offline
Posts: 115

|
Dude, Smalltalk? Wow.
I remember Smalltalk from college, but I didn't see much interesting it, except for the old 1 := 2 insanity. Then again, the prof teaching that class also loved wikis, which I thought weren't going to go anywhere either.
|
|
|
Logged
|
|
|
|
|
|
|
|
UAF
*Many bubbles*
  
Offline
Gender: 
Posts: 134

Robot in Disguise
|
Will the ships have 16 angles to them or more? I know that as a remake they should only have 16, but I've always found it annoying that small ships could hide between the firing angles of the bigger ships.
|
|
|
Logged
|
|
|
|
|
UAF
*Many bubbles*
  
Offline
Gender: 
Posts: 134

Robot in Disguise
|
You can rotate one image and still only have 16 angles. But I really hope there will be more.
But I'm not biased, I'm used to TW. 64 angles there. Also when an enemy Ilwrath cloaks the camera focus on you so you don't know there it's coming from. I'd really like to see those two things in a game that have a net version of the SC1 full game. That's kinda my wish list - an enhanched version of SC1's full game.
|
|
|
Logged
|
|
|
|
Dragon
Frungy champion
 
Offline
Posts: 86

|
Thanks Nightshadow.
Just thought I'd mention that there are no prerendered images so I have no real angle restrictions. Everything is 3D so the ships can bank into corners and rotate arbitrarily. I could also add self shadowing if I were feeling brave (but I'm not).
The idea is this remake will include the stategic game from SC1 but I wasn't planning adding anything new so it's only the graphics and sound which will be enhanced. Regarding the stategic game: guesst has done a bit of digging for the original star generation algorithm but with no joy so I'll probably just have to make it up.
As an aside, C provides no method for rotating images (or even drawing them) itself. One has to either write those methods oneself or use an existing library. I'm using DirectX, well, directly but many people have written wrappers to make it easier to use for 2D games. Googling something like "rasterize sprite" should turn up some info on how it's done.
As a further aside, Direct2D (not 3D) is a hopeless and unusable pile of shit that must go and die quitely in a corner if it hasn't done so already. Do not like.
|
|
« Last Edit: May 22, 2009, 02:59:28 pm by Dragon »
|
Logged
|
|
|
|
|