Front Office Football Central  

Go Back   Front Office Football Central > Main Forums > Off Topic
Register FAQ Members List Calendar Mark Forums Read Statistics

Reply
 
Thread Tools
Old 01-13-2012, 11:09 AM   #1
A-Husker-4-Life
College Prospect
 
Join Date: Jul 2001
Location: Nebraska
Game Development Question - Data storage

Hey You Guys!!

I'm trying to develop a text game and having trouble with windows 7 64bit.

Could someone tell me a compatible data source to use with this OS and

since I'm trying to sell it, maybe recommend open source or something similar.

Also, I wonder what type of data storage other indy developers use.

thanks,

JJ
__________________
JJ Smitty Owner of the TheC.F.L. - Come by and check us out.


Last edited by A-Husker-4-Life : 01-13-2012 at 11:10 AM.
A-Husker-4-Life is offline   Reply With Quote
Old 01-13-2012, 02:15 PM   #2
lighthousekeeper
College Starter
 
Join Date: Oct 2000
game dev: data access/storage - Front Office Football Central
__________________
...
lighthousekeeper is offline   Reply With Quote
Old 01-13-2012, 02:37 PM   #3
sabotai
General Manager
 
Join Date: Oct 2000
Location: The Satellite of Love
Pretty interesting to read what I wrote about programming 6 1/2 years ago and compare it to how differently I do things now (interesting to me anyway). (Edit: I still use binary files, though. Although I have thought about going to just using text files like the Paradox games)

Last edited by sabotai : 01-13-2012 at 02:38 PM.
sabotai is offline   Reply With Quote
Old 01-13-2012, 02:38 PM   #4
gstelmack
Pro Starter
 
Join Date: Oct 2000
Location: Cary, NC
If using C#, there is SQLServer compact available, no server or anything just reads/writes a standalone file. You could also look into SQLite for C++ or other development.

Or just write your own binary file reader/writer.
__________________
-- Greg
-- Author of various FOF utilities
gstelmack is offline   Reply With Quote
Old 01-13-2012, 02:51 PM   #5
GoldenEagle
Grizzled Veteran
 
Join Date: Dec 2002
Location: Little Rock, AR
I am assuming you are using C++ since your having this issue on a 64 bit operating system. If so, you got a real nasty booger on your hands. The issue has to do with overflow of primitive data types I believe. I think this is reason that FM does not support 64bit operating systems at this time. For a code base that size, I am guessing it is going to take years to overhaul and test it.
__________________
Xbox 360 Gamer Tag: GoldenEagle014
GoldenEagle is offline   Reply With Quote
Old 01-13-2012, 03:17 PM   #6
Ryan S
Quarterback
 
Join Date: Oct 2000
Location: London, England
Quote:
Originally Posted by GoldenEagle View Post
I am assuming you are using C++ since your having this issue on a 64 bit operating system. If so, you got a real nasty booger on your hands. The issue has to do with overflow of primitive data types I believe. I think this is reason that FM does not support 64bit operating systems at this time. For a code base that size, I am guessing it is going to take years to overhaul and test it.

FM certainly runs on 64 bit Windows 7. I have run the last 3 versions without using compatibility mode.
Ryan S is offline   Reply With Quote
Old 01-13-2012, 04:26 PM   #7
Solecismic
Solecismic Software
 
Join Date: Oct 2000
Location: Canton, OH
If you've been careful with compiler warnings (i.e., don't turn them off simply because they nag at you) over the years, it's not much of an issue.

The problems start when you're sloppy about type definitions. Don't use integers as pointers, then ignore compiler warnings. With 64-bit, that's a bug.

If you have a lot of custom typedefs, you might be inviting trouble.

While an integer isn't always what you think of as an integer, generally performance improves as the operating system improves. If you're counting on an integer being 32 bits, though, you're setting yourself up for an unpleasant surprise.
Solecismic is offline   Reply With Quote
Old 01-13-2012, 05:06 PM   #8
Marc Vaughan
SI Games
 
Join Date: Oct 2000
Location: Melbourne, FL
When writing a program I would heartily suggest ALWAYS writing it 'platform neutral' and abstracting as much as possible - not just in terms of the actual code functionality (ie. functions to open a file for instance) but also the typing you use.

For instance all programs I write have a section where I typedef out all the basic fundamental coding types so they can be effectively 'platform neutral' as needed.

for instance:
Code:
typedef char CHAR; typedef unsigned char UCHAR;

This approach makes it far simpler when it comes to moving between 16, 32, 64, 128 bit or whatever platforms if you want to retain save game compatibility between them because if you so desire you can keep all variables the same size on each by simply ensuring your definitions are appropriate for the type.

(these days its fairly commonplace not to refer to say an 'int' any more in code but to have a typedef used as INT32 or whatever to indicate the size for it ..)

This approach is also useful for the same reasons for saving on different endian systems - if you wrap things into a 'platform neutral' read/write function then you can hide the swapping of bytes in your platform layer and effectively ignore the endianness of the platform when you write the game code.

(if you want to be bored about this sort of stuff drop me a PM, I've been writing cross platform products longer than I care to remember )

Finally I'd echo Solecismic's comments about trying to be overly clever in code - don't rely on anything from a specific platform whether its how pointers operate or how a class lies out in memory, that sort of thing WILL bite you in the butt at some point otherwise ...

Last edited by Marc Vaughan : 01-13-2012 at 05:09 PM.
Marc Vaughan is offline   Reply With Quote
Old 01-14-2012, 09:33 AM   #9
gstelmack
Pro Starter
 
Join Date: Oct 2000
Location: Cary, NC
Quote:
Originally Posted by Marc Vaughan View Post
For instance all programs I write have a section where I typedef out all the basic fundamental coding types so they can be effectively 'platform neutral' as needed.

for instance:
Code:
typedef char CHAR; typedef unsigned char UCHAR;

Actually I tend to do:

Code:
typedef char INT8; typedef unsigned char UINT8; typedef short INT16; typedef unsigned short UINT16; ...

Better to have the bitsizes in the type names, and save CHAR for an actual character, not a number you store stuff in. But I agree wholeheartedly with the point, it's much easier to change the definition of INT16 for a particular compiler / platform than fix all your usage of INT because you moved to 64-bit or something.
__________________
-- Greg
-- Author of various FOF utilities
gstelmack is offline   Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is On
Forum Jump


All times are GMT -5. The time now is 07:18 PM.



Powered by vBulletin Version 3.6.0
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.