Нужна помощь с нехитрым, но и не простым планетарным календарём / математика :: пидоры помогите (реактор помоги) :: Excel :: наука :: нри

нри математика наука Excel пидоры помогите 

Нужна помощь с нехитрым, но и не простым планетарным календарём

Всем привет! Вожу нри по вахе и вот дошла кампания до путешествий по мирам, и чтобы всё было максимально реалистично и динамично, я решил запилить на экселе календарь с расчётами текущего погодного состояния планеты. Как я это вижу и что мы имеем в исходных данных:

1. Самое главное это конечно текущая дата игры. Она играет важное значение не только как мерило прошедшего времени, но и помогает определять когда заканчиваются различные состояния персонажей и конечно сроки важных грядущих событий (будь то миссии с ограничением времени или время, которое берут НИПы на решение каких то задач). В вахе время исчисляется тремя значениями: 538.007.М41

где 538 - это доля года (или цикл) от 1000. То бишь чтобы перевести на стандартное время Терры, допустим 2024 года, нужно 538 х 365 / 1000 = 196,4 день года или около обеда 15 июля.

007 - это текущий год тысячелетия, а М41 - текущее тысячелетие.

Таким образом получается что 538.007.М41 - это примерно середина июля 41007 года.

Используя нехитрые вычисления можно сопоставить циклы к привычному времени с небольшим округлением для удобства:

8 часов

1 цикл

Сутки

3 цикла

Неделя

20 циклов

Месяц

80 циклов

Квартал

250 циклов

2. Есть планетарная система с множеством миров:

нри,математика,наука,Excel,пидоры помогите,реактор помоги

Естественно миры сильно отличаются друг от друга по всем параметрам, но давайте возьмём для примера мир-улей Гилеад Праймус. Так как в лоре само собой ничего нет, кроме этой карты и минимума информации об условиях на мирах, я решил, что:

- Орбитальный год Праймуса равен 2340 циклам, то бишь более 2 лет по стандартному времени Терры, которые делятся на 3 основные погодные состояния: 0-1500 сезон жаркого лета, 1500-1800 сезон мощнейших пылевых бурь, 1800-2340 сезон резкого похолодания.

- Сутки на нём длятся 6 циклов, то бишь 48 часов, из которых 3 цикла - это день, 1 цикл утром и вечером - это сумерки, и 1 цикл - ночь освещаемая весёленьким заревом Великого Разлома. При этом, чтобы совсем уж не упарываться, влиянием времени года и положением относительно экватора и полюсов принебрегаем.

На а сама задача заключается в том, чтобы просто ввести заранее исходные параметры мира в эксельке, а во время игры просто введя текущую дату увидеть текущее время года и время суток мира.

У кого какие идеи хотя бы по логике как такое запилить? Я вроде умом понимаю, что сначала нужно задать точку отсчёта цикла планеты от цикла даты, но никак не соображу как это правильно в формулах разложить.

нри,математика,наука,Excel,пидоры помогите,реактор помоги

Подробнее


нри,математика,наука,Excel,пидоры помогите,реактор помоги
Еще на тему
Развернуть
Есть такая книжка Пфлегер, Монтбрук: Астрономия на персональном компьютере Подробнее: https://www.labirint.ru/books/5704/. Там есть программы и мужик описывает календари как что считается и тд
Интересно конечно, но такое ощущение что я попросил у тебя мухобойку, а получил Звезду Смерти. :)
Odin Odin 19.06.202419:30 ответить ссылка 0.5
Там в одной из первых глав простейшая программа как раз по календарям, я правда читал лет 15 назад
Тогда посмотрю. Если что есть на рутракере - https://rutracker.org/forum/viewtopic.php?t=2155322
Odin Odin 19.06.202419:35 ответить ссылка 0.0
Берёшь эксель. Столбец отвечающий за время, столбец за день, месяц, год и т.д. Автозаполнением растягиваешь вниз. Система сама поймёт, где когда делать +1, главное описать хотя бы один год или чуть больше, если надо.

Рядом делаешь для другой планеты, соотнося по строкам, так же описываешь тот же период в год, и растягиваешь насколько надо.

Каждая строка будет соответствовать одному моменту времени. Указывать на разные даты.
Дальше уже играться с формулами подставления значений. Где вводишь ему нужные значения для одной планеты, он распознает всю строку и выдаёт значения из других столбов. (проще делать фильтром по таблице)
Хм.... Это конечно не совсем спортивно, придётся хуеву гору времени потратить на то чтобы тысячи строчек нарастягивать и развести по ним значения, и в случае если нужно будет исходные значения переделать тоже то ещё дрочево, но поиск с вставкой я вроде как то пилил, так что вполне реально. Спасибо!
Odin Odin 19.06.202419:45 ответить ссылка -0.6
Можно и иначе. Вроде абсолютного значения даты. Количество секунд с какого-то единого момента.
У каждый планеты свои коэффициенты, которые нужно отдельно расчитать.
Год на Земле это 31 536 000 секунд. Делим наше абсолютное значение времени на это число, получаем год от единого момента (у нас в электронике это от 1970)
На другой планете это значение будет другим. но так же получим год, если абсолютное значение разделим на эту константу планеты. Месяц это 1/12 года? Из абсолютной даты вычитаем количество полных лет, и делим остаток на 1/12 константы года.
Таким образом можно сделать готовые поля в таблице, где вбиваешь дату, и высчитываешь из неё абсолютное значение, а из него для каждой планеты рассчитываешь.
Но да, придётся заебаться с расчетами.
И да, не нужно пытаться соотносить каждую величину с другими планетами, проще соотнести самую большую и её дробить на нужные составляющие, вроде годичного цикла, а уже от этой переменной высчитывать месяц - день - час - минута.
Главное сперва определиться, что будет абсолютным временем и точкой отсчета.
Точка отсчёта любая дата. Например я могу взять 000.000.М41. То бишь первое мгновение 41 тысячелетия. Для каждого мира на эту дату нужно определить его точку отсчёта, то бишь конкретно его цикл года. А дальше по каким то формулам определять фиксированные значения относительно его цикла, время года и время суток.
Odin Odin 19.06.202420:05 ответить ссылка 0.0
Допустим вот все исходные данные. Как для начала правильно посчитать текущий планетарный цикл относительно текущей даты? Пока похеру на времена года и время суток.
Odin Odin 19.06.202420:20 ответить ссылка 0.0
Так. Кажется сообразил. Берём считаем все циклы от 000.000.М41. Отнимаем от этого числа те циклы года мира, которые были на 000 и делим на общее количество циклов года. От этого числа отнимаем целую часть, чтобы осталась только дробная и эту дробь умножаем на общее количество циклов. Тадам, получается текущий цикл года мира
Odin Odin 19.06.202420:35 ответить ссылка 0.0
Я примерно так набросал. Справа настраиваются параметры календаря.
Слева рассчитывает абсолютную дату из нужной на любой планете
Слева снизу из абсолютной рассчитывает локальную

https://docs.google.com/spreadsheets/d/1N2MK6MujD3GUjKKwA8A2jbyGzcmRZyDPqsa2jQJeTys/edit?usp=sharing
Аааа, ну и всё! Деля получившееся число на нужные мне значения, я получаю дробь. Отбрасывая целую часть этой дроби у меня получается текущее положение времени суток или времени года относительно текущей даты и остаётся просто прописать какие значения соответствуют каждому диапазону от 0,000 до 0,999!
Odin Odin 19.06.202420:42 ответить ссылка 0.0
Я бы сформулировал всё в виде четких правил тектового интерфейса как что вычислять, и скормил бы их нейронке. Простой пример:
stass-1 stass-1 19.06.202419:56 ответить ссылка -0.9
Суть не в отсчёте времени, а в получении значений двух переменных в зависимости от соотношения текущей даты, с матрицей мира. Циклами считать и переводить туда сюда довольно быстро привыкаешь когда играешь, в вот чтобы ещё при этом помнить время суток и время года, это уже надо быть человеком дождя.
Odin Odin 19.06.202420:01 ответить ссылка 0.0
Я это для примера сделал, чтобы показать принцип работы.
Нужно сформулировать все правила, объяснить все формулы вычислений. По каким ключевым словам какие вычисления производить, и т.п. Одним огромным текстом. И скормить этот трактат нейронке первым сообщением. После чего она превратится в интерфес для работы по этим правилам.
ты для простого деления нейронную сеть решил использовать?
Не по теме, но если ты сам делал карту, не подскажешь какой шрифт использовал?
Sitka
Интересные люди в комментариях, один с книгой пришёл, второй с нейронкой...
Если я правильно понимаю твою задачу, то решение следующее:

Если у тебя в 000.000.M41 на планете наступает, например, полночь первого дня сезона жаркого лета (т.е. точка 0 в годовом календаре данном планеты), то в момент x.y.M41 у тебя на планете
Момент года : d = (1000*y+x) mod 2340 , где a mod b означает остаток от деления a на число b
соответственно для d между 0 и 1499 у тебя лето, между 1500 и 1799 пыль, между 1800 и 2339 у тебя холод
Время дня : t = (1000*y+x) mod 6
соответственно для t=0 у тебя ночь, для t=1 рассвет, t=2..4 день, t=5 закат
Да спасибо! Я до этого додумывался больше часа при помощи двух чашек чая!
Odin Odin 19.06.202420:51 ответить ссылка 0.6
Всем спасибо! Запилил календарь. Если кому понадобится методология, забирайте:

https://docs.google.com/spreadsheets/d/1NRrgSuywuGGPeSXIBUZsiELyE13wVv8W-1OmbuwKYds/edit?usp=sharing

Хотел синхронизировать модуль Цолькина с Григорианским календарём для удобства.. Мерси

Только зарегистрированные и активированные пользователи могут добавлять комментарии.
Похожие темы

Похожие посты
КУПОН
НА 1 помощь КУПОН
НА 1 помощь