Смотрим этот ваш хвалёный ChatGPT в контексте моддинга Хойки - Моды и моддинг - Strategium.ru Перейти к содержимому

Смотрим этот ваш хвалёный ChatGPT в контексте моддинга Хойки

Рекомендованные сообщения

Как известно, создать мод для Хойки может даже школьник младших классов. А давайте посмотрим, насколько хорошо знаком со скриптовым языком парадоксов знаменитый чат-бот ChatGPT. Бота не сбила с толку опечатка в названии игры и он прямо рвётся в бой и просит давать ему конкретный задачи:

ты знаком со скриптовым языком для моддинга компьютерных стратегий от Paradox Interactive наподобие Hуarts of Iron 4?
 
 

Как и любой другой язык программирования, я могу изучать и работать с языком скриптовых моддинга игр, включая тот, который используется в игре Hearts of Iron IV от Paradox Interactive. Язык скриптов, используемый в этой игре, называется "интерпретируемый модификационный язык" (Modding Script Language), и он основан на языке программирования Lua.

С помощью этого языка скриптов моддинга можно изменять различные аспекты игры, такие как настройки стран и политические фракции, технологии, исследования, события, боевые системы и т. д.

Я могу помочь вам с созданием и изменением скриптов в этом языке, если у вас есть конкретные задачи, которые нужно выполнить.

Ссылка на комментарий

Начнём с простенького национального фокуса:

хорошо, тогда попробуй написать код для национального фокуса в игре Hearts of Iron IV. При выполнении этого фокуса в стране должна меняться правящая партия на коммунистическую и отниматься 20% стабильности
Получим такой код:
Спойлер

# Файл: my_national_focus.txt

my_national_focus = {
    icon = GFX_goal_generic_political_advisor
    # Название фокуса
    name = "MY_FOCUS_NAME"
    
    # Описание фокуса
    desc = "MY_FOCUS_DESCRIPTION"
    
    # Длительность фокуса
    duration = 7
    
    # Открываем фокус только тогда, когда определенное условие выполнено
    prerequisite = {
        tag = MY_COUNTRY_TAG
    }

    # Эффекты фокуса
    effect = {
        # Изменяем правящую партию на коммунистическую
        set_politics = {
            ruling_party = MY_COMMUNIST_PARTY
        }
        
        # Отнимаем 20% стабильности
        stability = -0.2
    }
}

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

некоторые параметры ты неверно указал, вместо duration нужно использовать cost, а вместо effect - completion_reward. Попробуй исправить этот скрипт с учётом этой информации

Спойлер

# Файл: my_national_focus.txt

my_national_focus = {
    icon = GFX_goal_generic_political_advisor
    # Название фокуса
    name = "MY_FOCUS_NAME"
    
    # Описание фокуса
    desc = "MY_FOCUS_DESCRIPTION"
    
    # Стоимость фокуса
    cost = 10
    
    # Открываем фокус только тогда, когда определенное условие выполнено
    prerequisite = {
        tag = MY_COUNTRY_TAG
    }

    # Награда за выполнение фокуса
    completion_reward = {
        # Изменяем правящую партию на коммунистическую
        set_politics = {
            ruling_party = MY_COMMUNIST_PARTY
        }
        
        # Отнимаем 20% стабильности
        stability = -0.2
    }
}

Это конечно не все ошибки и код получился не рабочим до конца, но по крайней мере указанные огрехи он исправно починил, даже указал на этот раз для продолжительности фокуса наиболее распространённый вариант, явно в его базе есть примеры из кода фокусов для Хойки.

Ссылка на комментарий

Быстро глянем теперь умение работать с ивентами:

а теперь попробуй написать для этой же игры код для события, которое возникает в стране при падении уровня стабильности ниже 25%. В событии должно быть два варианта выбора, первый отнимает 100 очков политической власти, но прибавляет 10% стабильности, а второй вариант увеличивает поддержку войны в стране на 15%
Спойлер

# Файл: my_event.txt

country_event = {
    id = my_event.1
    title = "MY_EVENT_TITLE"
    desc = "MY_EVENT_DESCRIPTION"
    picture = GFX_report_event
    
    trigger = {
        tag = ROOT
        stability < 0.25
    }
    
    mean_time_to_happen = {
        months = 6
    }
    
    option = {
        name = "OPTION_1_NAME"
        add_political_power = -100
        add_stability = 0.1
    }
    
    option = {
        name = "OPTION_2_NAME"
        add_war_support = 0.15
    }
}

Вот с простым событием получилось уже получше, видимо из-за того что оно всё таки более самодостаточно, чем отдельный фокус на дереве с другими фокусами. В принципе здесь достаточно подставить свои ключи локализации и конкретное изображение и оно будет выполнять то, что и задумывалось (ну ладно, триггер для стабильности называется has_stability, но уверен бот найдёт эту ошибку, если подсказать). Пока хватит на сегодня, посмотрим потом ещё, на что он способен.

Изменено пользователем GBV
Ссылка на комментарий

ололош Чингисханович

Страшно... Оно теперь сделает хойку в реальности и захватит мир за люксембург.....

Ссылка на комментарий

1 час назад, ололош Чингисханович сказал:

Страшно... Оно теперь сделает хойку в реальности и захватит мир за люксембург.....

Отставить панику, до сильного ИИ ему ещё как до Луны :D

Ссылка на комментарий

Помучаем ещё сегодня немного нашего бота такой специфической темой, как моддинг Хойки. Зададим ещё раз ему задание на написание фокуса:

Напиши для этой игры код национального фокуса, при выполнении которого прибавляется 100 политической власти, увольняется персонаж TAG_vasya_pupkin и вызывается для тега SOV событие my_event.1

Спойлер

focus_tree = {
    country = {
        my_focus = {
            icon = GFX_goal_generic_research
            tooltip = "My Focus"
            picture = GFX_goal_generic_research
            
            prerequisite = { focus = some_other_focus }
            
            completion_reward = {
                add_political_power = 100
                remove_country_leader = TAG_vasya_pupkin
                country_event = { id = my_event.1 hours = 1 }
            }
        }
    }
}
 

Тут видим что бот на этот раз правильно указал секцию выполнения completion_reward, но пропустил cost и другие параметры. С персонажами он работать явно не умеет, база 21-го года всё таки даёт о себе знать.  Событие вызывается не у заданного тега, попробуем ему указать на это:

событие my_event.1 в твоём примере будет выполняться у нашей страны, а нужно чтобы оно вызывалось у страны с тегом SOV. Исправь фокус с учётом этого

Спойлер

focus_tree = {
    country = {
        my_focus = {
            icon = GFX_goal_generic_research
            tooltip = "My Focus"
            picture = GFX_goal_generic_research
            
            prerequisite = { focus = some_other_focus }
            
            completion_reward = {
                add_political_power = 100
                remove_country_leader = TAG_vasya_pupkin
                country_event = { id = my_event.1 target = SOV hours = 1 }
            }
        }
    }
}
 

target = SOV - это не то, что нам нужно, попробуем более явно подсказать, как нужно делать:

это не совсем так исправляется. Чтобы событие выполнялось для другого тега, нужно указать его область видимости, например SOV = { ... } - и в фигурных скобках указать тот код, который для этого тега выполняется. Попробуй ещё исправить по этим рекомендациям

Спойлер

focus_tree = {
    country = {
        my_focus = {
            icon = GFX_goal_generic_research
            tooltip = "My Focus"
            picture = GFX_goal_generic_research
            
            prerequisite = { focus = some_other_focus }
            
            completion_reward = {
                add_political_power = 100
                remove_country_leader = TAG_vasya_pupkin
                country_event = {
                    id = my_event.1 
                    target = ROOT 
                    immediate = yes
                    is_triggered_only = yes
                    SOV = {
                        # Код, который будет выполняться для страны с тегом SOV
                    }
                }
            }
        }
    }
}
 

Да уж, много строк кода - мало толку. С каждым разом получался скорее всё менее корректный вариант фокуса.

Ссылка на комментарий

Пусть хотя бы ивент теперь напишет:

Напиши код для этого события my_event.1, при выборе в нём первого варианта страна присоединяется к альянсу отправителя с тегом TAG, а при выборе второго варианта - тег TAG получает повод для войны против текущей страны

Спойлер

country_event = {
    id = my_event.1
    title = "My Event Title"
    desc = "My Event Description"
    
    trigger = {
        # Условия триггера, если нужно
    }
    
    option = {
        name = "Option 1"
        ai_chance = { factor = 100 }
        add_to_war = {
            tag = ROOT
            alliance_with = TAG
        }
    }
    
    option = {
        name = "Option 2"
        ai_chance = { factor = 100 }
        custom_effect_tooltip = "TAG gains a CB against ROOT"
        TAG = {
            add_wargoal = {
                type = humiliate
                target = ROOT
            }
        }
    }
}
 

Приглашение в альянс не то, что нужно. С поводом для войны тоже неправильно, хоть конечно с тегами всё норм указал, но нужно create_wargoal, а не add_wargoal. Ну и как вишенка на торте цель войны humiliate :no-no: Не, ну а что, начнём войну просто чтобы унизить противника. Впрочем, по моим наблюдениям, всякие начинающие мододелы-люди тоже иногда начинают что-то выдумывать из головы, в странной надежде, что движок игры всё поймёт и выполнит. Хотя, может быть то были не люди? :unknw:

Изменено пользователем GBV
Ссылка на комментарий

Попробуем ещё дать задание на английском, раз уж этот язык более приоритетный для бота:

write code for national focus in game Hearts of Iron 4. As a result of this focus in 70 days we get 100 political power, our country leader get new trait my_first_trait and starting mission SOV_new_mission

Спойлер

focus_tree = root_focus.add_focus("my_national_focus")
focus_tree.set_icon("GFX_goal_generic_political_spread")

# Set the localization for the focus
focus_tree.add_prerequisite("focus = my_previous_focus")
focus_tree.set_name("My National Focus")
focus_tree.set_description("This is my national focus.")

# Set the requirements and effects of the focus
focus_tree.add_effect("add_political_power = 100")
focus_tree.add_effect("add_country_leader_trait = my_first_trait")
focus_tree.add_effect("start_mission = { mission = SOV_new_mission }")

# Set the time and cost of the focus
focus_tree.set_days(70)
focus_tree.set_cost(10)

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

Изменено пользователем GBV
Ссылка на комментарий

LeahBarrett
В 19/2/2023 в 22:48, GBV сказал:

Как известно, создать мод для Хойки может даже школьник младших классов. А давайте посмотрим, насколько хорошо знаком со скриптовым языком парадоксов знаменитый чат-бот ChatGPT. Бота не сбила с толку опечатка в названии игры и он прямо рвётся в бой и просит давать ему конкретный задачи:

ты знаком со скриптовым языком для моддинга компьютерных стратегий от Paradox Interactive наподобие Hуarts of Iron 4?
 
 
 

Как и любой другой язык программирования, я могу изучать и работать с языком скриптовых моддинга игр, включая тот, который используется в игре Hearts of Iron IV от Paradox Interactive. Язык скриптов, используемый в этой игре, называется "интерпретируемый модификационный язык" (Modding Script Language), и он основан на языке программирования Lua.

С помощью этого языка скриптов моддинга можно изменять различные аспекты игры, такие как настройки стран и политические фракции, технологии, исследования, события, боевые системы и т. д.

Я могу помочь вам с созданием и изменением скриптов в этом языке, если у вас есть конкретные задачи, которые нужно выполнить.

Use Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое. with a variety of languages fluently, completely free

Изменено пользователем LeahBarrett
Ссылка на комментарий

Присоединиться к обсуждению

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

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Only 75 emoji are allowed.

×   Ваша ссылка автоматически преображена.   Отображать как простую ссылку

×   Предыдущее содержимое было восстановлено..   Очистить текст в редакторе

×   You cannot paste images directly. Upload or insert images from URL.

  • Ответы 8
  • Создано
  • Последний ответ
  • Просмотры 1377

Лучшие авторы в этой теме

  • GBV

    7

  • ололош Чингисханович

    1

  • LeahBarrett

    1

Лучшие авторы в этой теме

Популярные сообщения

GBV

Как известно, создать мод для Хойки может даже школьник младших классов. А давайте посмотрим, насколько хорошо знаком со скриптовым языком парадоксов знаменитый чат-бот ChatGPT. Бота не сбила с толку

GBV

Отставить панику, до сильного ИИ ему ещё как до Луны 

GBV

Попробуем ещё дать задание на английском, раз уж этот язык более приоритетный для бота: write code for national focus in game Hearts of Iron 4. As a result of this focus in 70 days we get 100 pol

GBV

Начнём с простенького национального фокуса: хорошо, тогда попробуй написать код для национального фокуса в игре Hearts of Iron IV. При выполнении этого фокуса в стране должна ме

GBV

Быстро глянем теперь умение работать с ивентами: а теперь попробуй написать для этой же игры код для события, которое возникает в стране при падении уровня стабильности ниже 25%

ололош Чингисханович

Страшно... Оно теперь сделает хойку в реальности и захватит мир за люксембург.....

GBV

Помучаем ещё сегодня немного нашего бота такой специфической темой, как моддинг Хойки. Зададим ещё раз ему задание на написание фокуса: Напиши для этой игры код национального фокуса, при выполнен

GBV

Пусть хотя бы ивент теперь напишет: Напиши код для этого события my_event.1, при выборе в нём первого варианта страна присоединяется к альянсу отправителя с тегом TAG, а при выборе второго вариан

  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу


Copyright © 2008-2024 Strategium.ru Powered by Invision Community

×
×
  • Создать...