Elite Games - Свобода среди звезд!
.
ВНИМАНИЕ!
Наша конференция посвящена космической тематике и компьютерным играм.
Политические вопросы и происходящие в мире события в данный момент на нашем сайте не обсуждаются!

  » исходник, желательно на с++, игры ELITE | страница 1
Конференция предназначена для общения пилотов. Для удобства она разделена на каналы, каждый из которых посвящен определенной игре. Пожалуйста, открывайте темы только в соответствующих каналах и после того, как убедитесь, что данный вопрос не обсуждался ранее.

Поиск | Правила конференции | Фотоальбом | Регистрация | Список пилотов | Профиль | Войти и проверить личные сообщения | Вход

   Страница 1 из 2
На страницу: 1, 2  След. | Все страницы
Поиск в этой теме:
Канал Elite: «исходник, желательно на с++, игры ELITE»
Пассажир
 

Пассажир




Облазил кучу сайтов с ссылками на ELIT`у, все битые исходника так и не нашел. Поделитесь, у кого есть, исходником, желательно на с++, игры ELITE любой модификации.
Очень сильное желание посмотреть как там реализована постройка систем, галактик, вселенной и все остальное.
    Добавлено: 22:03 13-11-2005   
Пассажир
 

Пассажир




Нашел на Elite - The New Kind исходник на, с или с++, они как-то похожи.
Тока я не пойму, а как эту тучу файлов теперь скомпилпть, ну шобы когда я сделаю пару изменений в коде, посмотреть че из этого получилось? Может хто подскажет, а?

Шото просматривая код, где строится галактика. НИФИГА не понял и где же обещанная числовая последовательность Фибоначчи и 2 в 48 степени Галактик (280.000.000.000.000 галактик). Даваите пообщаемся по поводу исходника этой игрушки.
Я ще на этом форуме[/url]
    Добавлено: 14:09 16-11-2005   
Crimson
 560 EGP


Рейтинг канала: 1(8)
Репутация: 130
Сообщения: 3041

Зарегистрирован: 03.09.2003
Кхмм... а чем и из-под чего вы собираетесь компилить? Для начала надо скачать aллегру нужной версии (предварительно разобравшись, какая из них нужная). Потом, я так понял, newkind.zip предполагается распаковать в allegro\include, и компилить alg_main.c. Только у меня aллегра не компилится из-за отсутствия каких-то хидеров. Разбираться с ней чесгря влом.

Можно поинтересоваться, кто вам обещал генерацию галактик числами Фибоначчи? Совсем запутался... Хотел бы я на это посмотреть... В new kind, если не ошибаюсь, должно быть 8 галактик по 255 звезд, генерящихся с помощью ГПСЧ. 280Т галактик там не было и быть не могло.
    Добавлено: 15:08 16-11-2005   
Пассажир
 

Пассажир




СМТРЫ:
1. Elite - Меню раздела
Цитата:
Всего в Элите 281 триллион 474 миллиарда 976 миллионов 710 тысяч 676 галактик! В каждой из них по 256 звезд. Восьмерок галактик соответственно 35 триллионов 184 миллиарда 372 миллиона 88 тысяч 32. Если просматривать каждую галактику всего лишь одну секунду, то для просмотра всех понадобится 535 миллионов 530 тысяч 777 лет. Если кто-то так и не нашел главную диагональ, то могу подсказать, что в первой стандартной галактике она проходит например через планету Lerelace.


2. Elite - FAQ от Дэвида Брабена
Цитата:
13. Как удалось поместить 8 галактик с тысячами планет во всего лишь 22 Кб оперативной памяти?

Все звездные системы в Elite генерируюися псевдослучайно. Для объяснения вообразите числовую последовательность, которая выглядит как случайная — как результат сложения двух последних чисел (перед следующим, которое вы поставите в последовательность) и оставляя в качестве следующего члена последовательности числа из двух последних цифр полученной суммы. Для того, чтобы начать числовую последовательность,вам нужно выбрать два числа, отделив указанное число-остаток. Например, при выборе 12 и 34 вы получили бы последовательность 12, 34, 46, 80, 26, 06, 32, 38, 70, 08 ... Этот числовой метод известен как числовая последовательность Фибоначчи, по имени парня, который первым её придумал (*1). Существуют лучшие методы, но принцип один и тотже. Такая последовательность может быть использован для генерации названий планет, их координат, размеров, типов экономики и так далее, с программными законами исключения «глупых» вариантов. Поэтому сохраняется только «источник» — для Elite это шесть байт для каждой галактики, но в интересах экономии памяти (да — шесть байт считалось много) каждая галактика использовала «источник» со сдвигом на еденицу (это деление на два и возврат «лишнего» в начало бинарных цифр (*2)). (Первоначально в Elite было 2 в 48 степени Галактик (да, это 280.000.000.000.000 галактик), но Дэвид Джонсон-Дэвис из Acornsoft справедливо полагал, что это было бы просто глупо!)

*1. Забавный человек, скажу я Вам, этот Брабен. Называть «парнем» одного из величайших математиков 14 века, давшего основу развитию теории чисел.
*2. Насколько я помню, в Elite для ZX-Spectrum это было так: берется первый байт, сдвигается на еденицу , «выпавший» бит уходил в следующий байт и так далее, а последний «выпавший» байт последовательности становился первым в первом байте. Поскольку в байте восемь бит — вот и получилось 8 галактик, а поскольку 6 байтов по 8 бит составляют 48 бит, а каждый бит может иметь 2 состояния — вот Вам и 2 в 48-й степени галактик.
Кстати, я помню, что в 47-й галактике я бывал. Я поштудирую свои записи по этому поводу и Вам сообщу.
    Добавлено: 04:54 17-11-2005   
Crimson
 560 EGP


Рейтинг канала: 1(8)
Репутация: 130
Сообщения: 3041

Зарегистрирован: 03.09.2003
Хм... действительно... хотя обычно под числами Фибоначчи другая последовательность подразумевается. По-моему там имелось в виду, что ГСЧ позволяет получить 280Т галактик. При этом последовательность Фибоначи скорее приведена как пример. Не знаю, может в оригинальной Элите и применялся именно этот алгоритм, но в new kind используется обычный rand стандартной библиотеки. А не, не используется. Тамошний ГПСЧ определен в random.c.

А вас, собственно, что конкретно в этих исходниках интересует то?
    Добавлено: 15:42 18-11-2005   
Пассажир
 

Пассажир




Да вот какраз этот самый алгоритм разброса звезд в галактиках игры и интерисует.
Ведь этот разброс только на словах случайный, а на самом деле каждая звезда занимает постоянно одно и тоже место (это при том что их много (звезд)), как если бы мы задали ее координаты (скажем в виде массива с координатами для каждой звезды), а не компьютер расчитывал бы их сам по своему алгоритму.

Мутно я сказанул, верно?
    Добавлено: 17:45 18-11-2005   
Crimson
 560 EGP


Рейтинг канала: 1(8)
Репутация: 130
Сообщения: 3041

Зарегистрирован: 03.09.2003
Мутно, но верно Да. Потому такие алгоритмы и называется генераторами псевдослучайных чисел - на самом деле они генерят последовательность чисел по вполне конкретной закономерности, но результат выглядит как совершенно хаотичный ряд чисел.

От хранения координат в масиве это отличается тем, что нельзя задать для каждой звезды определеные координаты - они будут генериться "случайно". Но зная число, которое использовалось алгоритмом "для затравки" (так называемый seed) - можно в точности воспроизвести эту "случайную" последовательность сколько угодно раз.
    Добавлено: 09:44 19-11-2005   
Пассажир
 

Пассажир




Вот именно этот алгоритм, по которому работают ГЕНЕРАТОРЫ ПСЕВДОСЛУЧАЙНЫХ ЧИСЕЛ мне и нужен.

Где-то на каком-то сайте я видал алгоритм через натуральный логарифм, так-теперь не могу найти ссылку на него, удалил наверное, Б Л И Н!!! Рыдания.
    Добавлено: 01:30 20-11-2005   
Crimson
 560 EGP


Рейтинг канала: 1(8)
Репутация: 130
Сообщения: 3041

Зарегистрирован: 03.09.2003
Может через дискретный? Вообще, вам для чего ГПСЧ нужен, что стандартный rand() не устраивает?
    Добавлено: 03:21 20-11-2005   
Пассажир
 

Пассажир




Когда координаты расчитываются по известному алгоритму, то задав начальные параметры (как в ориджинал ELITE, где эти самые начальные параметры - это 6 галактических байтов), я смогу получить нужные мне "ПСЕВДОСЛУЧАЙНЫЕ" (фиксированные для меня, но случайные для игрока) координаты.

А через стандартный rand() комп сам задает свои входные/начальные параметры и по ним выводит действительно случайные числа, т.к. при следующем запуске rand() эти числа будут другими т.к. поменяются входные/начальные параметры.
    Добавлено: 08:40 20-11-2005   
Crimson
 560 EGP


Рейтинг канала: 1(8)
Репутация: 130
Сообщения: 3041

Зарегистрирован: 03.09.2003
Есть еще функция void srand(unsigned seed) Подмигиваю
    Добавлено: 10:06 20-11-2005   
Пассажир
 

Пассажир




Оппа, стоп.
С ентого места поподробнее, если мона.
    Добавлено: 10:39 20-11-2005   
Crimson
 560 EGP


Рейтинг канала: 1(8)
Репутация: 130
Сообщения: 3041

Зарегистрирован: 03.09.2003
Дык, куда ж еще подробнее... при вызове srand задается тот самый начальный параметр, от которого будут плясать последующие вызовы rand.

Вообще, есть еще такие вещи как документация по стандартной библиотеке и справочная система компилятора Улыбка Желательно хотя бы в общих чертях с ними ознакомиться, чтобы велосипед не изобретать.
    Добавлено: 10:52 20-11-2005   
Пассажир
 

Пассажир




Вод блин и тут книги читать прейдеться
    Добавлено: 10:54 20-11-2005   
Crimson
 560 EGP


Рейтинг канала: 1(8)
Репутация: 130
Сообщения: 3041

Зарегистрирован: 03.09.2003
Можно не читать. Но по мне так легче потратить недельку, читая что уже за меня сделано, чем то же самое самому писать и отлаживать.

В чем проблема-то? Вызываем srand(123), и rand'ом по одному генерируем ряд. Если нужен тот же самый ряд на бис - снова зовем srand(123). Результат 100% воспроизводим от запуска к запуску.
    Добавлено: 11:04 20-11-2005   
Пассажир
 

Пассажир




Да ленивый я насчет почитать, мне бы готовый примерчик в кодах и дело с концом.
    Добавлено: 11:51 20-11-2005   
Пассажир
 

Пассажир




А у меня есть ELITE для спектрума, на assemblere
могу подогнать
    Добавлено: 08:49 02-12-2005   
Пассажир
 

Пассажир




Чёта я не поняла Подозрение. , исходник чёли?
    Добавлено: 22:14 03-12-2005   
AlexD
 383 EGP


Репутация: 82
Сообщения: 1084
Откуда: Тюмень, Россия
Зарегистрирован: 25.04.2003
Ну у меня есть исходник jjffe28. Только там на Сях только начало, где инициализации экрана под окошко, остальное на асме...
_________________
тетрагидрометаноптерина макарена
метилентетрагидрофолата макарена
ЭЭЭЭЭ МАКАРЕНА
    Добавлено: 14:49 05-12-2005   
Снуч
 941 EGP


Киборг
Рейтинг канала: 3(34)
Репутация: 232
Сообщения: 2696
Откуда: Ракслатенон
Зарегистрирован: 09.08.2005
krolik75 :
могу подогнать

подогнать под винды 98 можешь?
    Добавлено: 15:10 05-12-2005   
Канал Elite: «исходник, желательно на с++, игры ELITE»
На страницу: 1, 2  След. | Все страницы
  
Показать: 
Предыдущая тема | Следующая тема |
К списку каналов | Наверх страницы
Цитата не в тему: Как вы можете издеваться над тем, чего еще нет? (Steadfast)

  » исходник, желательно на с++, игры ELITE | страница 1
Каналы: Новости | Elite | Elite: Dangerous | Freelancer | Star Citizen | X-Tension/X-BTF | X2: The Threat | X3: Reunion | X3: Terran Conflict | X Rebirth | X4: Foundations | EVE Online | Orbiter | Kerbal Space Program | Evochron | VoidExpanse | Космические Миры | Онлайновые игры | Другие игры | Цифровая дистрибуция | play.elite-games.ru | ЗВ 2: Гражданская война | Творчество | Железо | Игра Мечты | Сайт
   Дизайн Elite Games V5 beta.18