|
Здравствуйте Гость ( Вход | Регистрация ) Доступ из РоссииДля сохранения достпа из России к сайту и форуму GBX
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
![]() ![]() ![]() |
РПГ текстовый файтинг, Закрытый бета тест
| Alexander87 |
Среда, 31 октября 2018, 14:34
Отправлено
#1
|
![]() Продвинутый ![]() ![]() Группа: Пользователи Сообщений: 45 Регистрация: 31 мар. 2016 Пользователь №: 55 050 ![]() ![]() |
Пройдите по ссылке, нажмите кнопку Run
Вытяните экран мышкой снизу вверх и наслаждайтесь. Игра на двоих. 1) Введите имена игроков. 2) Подберите класс, оружие и броню. 3) Выберете рандомные доп. характеристики. 4) Вступайте в бою друг с другом. https://onlinegdb.com/Hy9iKBP27 Категорически прошу всячески указывать на все кривости, ничтожности и косяки игры. Так-же прошу Вас подбросить идей по поводу классовых умений и умений за манну. Каких умений не хватает. Подскажите если баланс кривой. Без Вас мне не справиться!!! Сообщение отредактировал Alexander87 - Среда, 31 октября 2018, 18:26 -------------------- Слава Богу за всё и за скорбь и за радость! |
| Oreanor |
Среда, 31 октября 2018, 14:44
Отправлено
#2
|
![]() старая тусовка ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 2 820 Регистрация: 15 мая. 2008 Из: Москва Пользователь №: 26 741 ![]() ![]() |
![]() на этом месте я сдался ) ps: "не" с глаголами пишется раздельно Сообщение отредактировал Oreanor - Среда, 31 октября 2018, 14:45 -------------------- сайт dendy-steepler http://www.dendy.byethost16.com/steepler/
|
| Alexander87 |
Среда, 31 октября 2018, 14:46
Отправлено
#3
|
![]() Продвинутый ![]() ![]() Группа: Пользователи Сообщений: 45 Регистрация: 31 мар. 2016 Пользователь №: 55 050 ![]() ![]() |
QUOTE (Oreanor @ Среда, 31 октября 2018, 14:44) Заменю на просто Enter надо 1 нажать просто. -------------------- Слава Богу за всё и за скорбь и за радость! |
| Nik1 |
Среда, 31 октября 2018, 15:29
Отправлено
#4
|
![]() Флудер ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 4 377 Регистрация: 01 дек. 2014 Пользователь №: 51 382 ![]() ![]() |
Alexander87, сорян. Дропнул на выборе брони. Ты хоть картинки туда вставь что ли. Пока совсем не весело(.
|
| Ol_ |
Среда, 31 октября 2018, 15:39
Отправлено
#5
|
![]() Билли Бой Торнтон ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 6 556 Регистрация: 04 янв. 2017 Из: У-У Пользователь №: 57 411 ![]() ![]() |
|
| Oreanor |
Среда, 31 октября 2018, 15:42
Отправлено
#6
|
![]() старая тусовка ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 2 820 Регистрация: 15 мая. 2008 Из: Москва Пользователь №: 26 741 ![]() ![]() |
QUOTE (oldOK @ Среда, 31 октября 2018, 15:39) а аскишный мультик в конце есть? -------------------- сайт dendy-steepler http://www.dendy.byethost16.com/steepler/
|
| Alexander87 |
Среда, 31 октября 2018, 15:57
Отправлено
#7
|
![]() Продвинутый ![]() ![]() Группа: Пользователи Сообщений: 45 Регистрация: 31 мар. 2016 Пользователь №: 55 050 ![]() ![]() |
QUOTE (Nik1 @ Среда, 31 октября 2018, 15:29) Alexander87, сорян. Дропнул на выборе брони. Ты хоть картинки туда вставь что ли. Пока совсем не весело(. Так текстовая игра ведь)) -------------------- Слава Богу за всё и за скорбь и за радость! |
| Nik1 |
Среда, 31 октября 2018, 15:58
Отправлено
#8
|
![]() Флудер ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 4 377 Регистрация: 01 дек. 2014 Пользователь №: 51 382 ![]() ![]() |
|
| Ol_ |
Среда, 31 октября 2018, 16:00
Отправлено
#9
|
![]() Билли Бой Торнтон ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 6 556 Регистрация: 04 янв. 2017 Из: У-У Пользователь №: 57 411 ![]() ![]() |
|
| Landis |
Среда, 31 октября 2018, 16:21
Отправлено
#10
|
![]() Спорт это сила. ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 316 Регистрация: 16 янв. 2017 Из: Замкадландия Пользователь №: 57 601 ![]() ![]() |
Как вы в это играете, вообще ?))
|
| Ol_ |
Среда, 31 октября 2018, 16:33
Отправлено
#11
|
![]() Билли Бой Торнтон ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 6 556 Регистрация: 04 янв. 2017 Из: У-У Пользователь №: 57 411 ![]() ![]() |
|
| Landis |
Среда, 31 октября 2018, 16:38
Отправлено
#12
|
![]() Спорт это сила. ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 316 Регистрация: 16 янв. 2017 Из: Замкадландия Пользователь №: 57 601 ![]() ![]() |
|
| Nik1 |
Среда, 31 октября 2018, 17:04
Отправлено
#13
|
![]() Флудер ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 4 377 Регистрация: 01 дек. 2014 Пользователь №: 51 382 ![]() ![]() |
|
| Alexander87 |
Среда, 31 октября 2018, 18:10
Отправлено
#14
|
![]() Продвинутый ![]() ![]() Группа: Пользователи Сообщений: 45 Регистрация: 31 мар. 2016 Пользователь №: 55 050 ![]() ![]() |
Я понимаю что игра кривая, не красивая и ужасно оптимизированна, я просто пытался хоть-что-то написать, я старался но первый блин ... комом. Я понимаю что Вы пытаетесь обосрать игру и это заслуженно.
Но прошу хотя бы указывать на конкретные косяки. 2 месяца назад я впервые начал серьезно увлекаться программированием ... и это плоды моего познания. Они ничтожны, но я стараюсь. Возможно я когда нибуть и смогу создать игру от которой Вы не захотите блевать, но это не сейчас. Поэтому постарайтесь хотя-бы попробовать и немного уделить времени моему детещу. И указать на явные и самые жесткие недостатки. А программистов прошу указать где код слишком кривой, ведь даже Вы когда-то были очень слабы в програмировании. -------------------- Слава Богу за всё и за скорбь и за радость! |
| Nik1 |
Среда, 31 октября 2018, 18:24
Отправлено
#15
|
![]() Флудер ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 4 377 Регистрация: 01 дек. 2014 Пользователь №: 51 382 ![]() ![]() |
QUOTE (Alexander87 @ Среда, 31 октября 2018, 18:10) Я понимаю что игра кривая, не красивая и ужасно оптимизированна, я просто пытался хоть-что-то написать, я старался но первый блин ... комом. Я понимаю что Вы пытаетесь обосрать игру и это заслуженно. Но прошу хотя бы указывать на конкретные косяки. 2 месяца назад я впервые начал серьезно увлекаться программированием ... и это плоды моего познания. Они ничтожны, но я стараюсь. Возможно я когда нибуть и смогу создать игру от которой Вы не захотите блевать, но это не сейчас. Поэтому постарайтесь хотя-бы попробовать и немного уделить времени моему детещу. И указать на явные и самые жесткие недостатки. А программистов прошу указать где код слишком кривой, ведь даже Вы когда-то были очень слабы в програмировании. Не хотел тебя обидеть или обосрать твое детище. Просто ты попросил указать на косяки, я так и сделал. Пока это скучно. Добавь описательной части что ли, как в текстовый квестах. Не просто выберите оружие, а вы спускаетесь по скрипучим ступеням в оружейную и берете оружие... Ну хоть как то развеселить, если нет визуала. Технически циферки нажимаются нормально. Ты молодец. Сообщение отредактировал Nik1 - Среда, 31 октября 2018, 18:24 |
| Alexander87 |
Среда, 31 октября 2018, 18:30
Отправлено
#16
|
![]() Продвинутый ![]() ![]() Группа: Пользователи Сообщений: 45 Регистрация: 31 мар. 2016 Пользователь №: 55 050 ![]() ![]() |
QUOTE (Nik1 @ Среда, 31 октября 2018, 18:24) Не хотел тебя обидеть или обосрать твое детище. Просто ты попросил указать на косяки, я так и сделал. Пока это скучно. Добавь описательной части что ли, как в текстовый квестах. Не просто выберите оружие, а вы спускаетесь по скрипучим ступеням в оружейную и берете оружие... Ну хоть как то развеселить, если нет визуала. Технически циферки нажимаются нормально. Ты молодец. Спасибо!, хорошая идея! -------------------- Слава Богу за всё и за скорбь и за радость! |
| Oreanor |
Среда, 31 октября 2018, 18:55
Отправлено
#17
|
![]() старая тусовка ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 2 820 Регистрация: 15 мая. 2008 Из: Москва Пользователь №: 26 741 ![]() ![]() |
Не отчаивайся, первые блины они всегда такие.
-------------------- сайт dendy-steepler http://www.dendy.byethost16.com/steepler/
|
| УльтраБлокС |
Среда, 31 октября 2018, 19:21
Отправлено
#18
|
![]() Очень скорая помощь ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 664 Регистрация: 17 июня 2009 Из: Москва Пользователь №: 32 448 ![]() ![]() |
Огромная гора вложенных списков, то, что можно было вынести в классы почему-то на функциях сделано. Выглядит код как какой-то монструозный код на C, только на 3-ю минуту я понял, что это таки Python. Не надо так.
-------------------- |
| Akell |
Среда, 31 октября 2018, 19:27
Отправлено
#19
|
|
Фанат ![]() ![]() ![]() Группа: Пользователи Сообщений: 113 Регистрация: 21 апр. 2017 Пользователь №: 58 733 ![]() ![]() |
касательно кода. слишком он спутанный и непонятный. это плохо и лишние сложности.
предлагаю: 0) pep8 1) почитать про enum и вдобавок придумать там нормальные структуры данных, чтобы с ними было легко и приятно работать. а то у тебя всё через хардкоженные индексы в двумерных массивах. 2) т.к. тебе нужно обрабатывать ввод, то тебе нужны методы (функции или процедуры, как угодно эт называй) для обработки ввода и проверки его на ошибки. очень стоит вычленить это в отдельное что-то. например в модуль назвать это utils и туда пихать. 3) тоже самое что с п2, только касательно вывода информации. 4) очень много фактически одинаковых строк, прям 1 к 1. почитай про DRY (don't repeat yourself) и постарайся применять. 5) касательно общей архитектуры и структуры проекта и вообще. начинай думать и двигаться в направлении вычленения модулей, сущностей (классов/обьектов) и их аспектов/свойств и прочего, ищи что там у них есть общего и что можно вытащить в отдельные сущности. и переделай всё в направлении обьектно-ориентированного подхода. это позволит проще вносить изменения, улучшать, исправлять, тестировать код. просто сейчас у тебя всё в кашу смешано. поясню о чем речь. в идеале как должно быть: ты хочешь добавить какую-то новую возможность. например в нового игребального персонажа или механику. и ты сам себя спрашиваешь, в скольких местах нужно переделывать? в идеале таких мест должно быть меньше чем пальцев на руке. (в самом недостижимом идеале - в 1одном месте) у тебя просто сейчас очень сильно связанный код, с ним сложно работать и непродуктивно. от этого надо избавляться. 6) после того как появится куча модулей и прочего, можно приделать например юнит-тестики, и прочие тесты. это позволит иметь хоть какую-то уверенность в констистенстности вносимых изменений в код. 7) и замечинание про чрезмерное увлечение операторов ветвление (условным оператором). я понимаю что ты хочешь сделать, но вввидимо ввиду недостаточного опыта и навыков, ты используешь не те инструменты. тебе бы очень подошло обьектно-ориентированное что-то. тогда бы вместо перебирания вручную всех вариаций в if-else ты бы просто писал Player.takes_damage_from(Another_player) или Player.attacks(Another_player) и всё. Не нужно было бы для каждого отдельного вида бойца перебирать всё это через if. Вся конкретика происходящего была бы внутри бойца встроена уже. Сейчас фактически ты на себя взял всю ту низкоуровневую работу и те нюансы работы кода, которые бы не пришлось вручную делать при ООП. Т.е. ты вручную некие аналоги виртуальных фукнций к неким обьектам маппишь. Т.е. ты изобретаешь некое отдаленое подобие ООП с кучей лишних недостатков, вместо напрямую применения ООП. Что тебе мешает делать это явно? ты просто делаешь лишнюю рутинную работу, в которой легко наделать ошибок. 8) Не привязывайся к коду (в смысле симпатий), будь готов выкинуть его и переделать в любой момент. знаешь что тебе бы очень подошло, какой-нибудь github или что-то такое, где можно и документацию вести и обссуждение и прочее. Тут неочень подходяще и просто неудобно это. вощем тебе стоит сконцентироваться на чем-то общем, а не на частностях. т.е. допустим у тебя задача сделать норм движок для такого рода игр, чтобы ты смог туда без особых проблем добавлять новых персонажей, механики и остальное. и сейчас самый подходящий момент, чтобы начать переписывать всё. т.к. у тебя уже появился опыт и понимание где ты уперся в возможности текущей реализации. используй текущию реализацию как пример, и устраняй её недостатки в новой версии написанной с нуля. если конкретика интересует, то например вот: 734-738 CODE player_inoy = warrior[(warrior.index(player))-1] if player_inoy[7][0]<player_inoy[7][2]: player_inoy[7][0]=player_inoy[7][0]+player_inoy[7][1] if player_inoy[7][0]>player_inoy[7][2]: player_inoy[7][0]=player_inoy[7][2] в первой строчке ты делаешь слишком много лишних движений, чтобы получить результат. это потому что неочень подходящие и неудобные структуры данных используешь. ты в целом используешь подход: очень простые структуры данных, но очень сложный код для работы с ними. а надо наоборот. "умные" и хитрые структуры, но работать с ними максимально простым и понятным кодом. чтобы не было непонятного битов, индексов и прочего туда-сюда. в следующих строках происходит неведомо что. цифровые индексы не несут смысловой нагрузки (уверен, что ты сам не вспомнишь что скрывается за каждой цифрой). вот тут как раз enum будет в тему. таких аналогичных проблем ещё много в коде. можно ещё долго и упорно искать недостатки, в целом, ещё кроме наименования переменных и общего стиля особых дефектов нет (если принять во внимание уровень твоих навыков). по итогам: код конечно не production ready, требуется значительная проработка архитектуры и структуры и дизайна проекта. |
| Alexander87 |
Среда, 31 октября 2018, 19:52
Отправлено
#20
|
![]() Продвинутый ![]() ![]() Группа: Пользователи Сообщений: 45 Регистрация: 31 мар. 2016 Пользователь №: 55 050 ![]() ![]() |
QUOTE (Akell @ Среда, 31 октября 2018, 19:27) касательно кода. слишком он спутанный и непонятный. это плохо и лишние сложности. предлагаю: 0) pep8 1) почитать про enum и вдобавок придумать там нормальные структуры данных, чтобы с ними было легко и приятно работать. а то у тебя всё через хардкоженные индексы в двумерных массивах. 2) т.к. тебе нужно обрабатывать ввод, то тебе нужны методы (функции или процедуры, как угодно эт называй) для обработки ввода и проверки его на ошибки. очень стоит вычленить это в отдельное что-то. например в модуль назвать это utils и туда пихать. 3) тоже самое что с п2, только касательно вывода информации. 4) очень много фактически одинаковых строк, прям 1 к 1. почитай про DRY (don't repeat yourself) и постарайся применять. 5) касательно общей архитектуры и структуры проекта и вообще. начинай думать и двигаться в направлении вычленения модулей, сущностей (классов/обьектов) и их аспектов/свойств и прочего, ищи что там у них есть общего и что можно вытащить в отдельные сущности. и переделай всё в направлении обьектно-ориентированного подхода. это позволит проще вносить изменения, улучшать, исправлять, тестировать код. просто сейчас у тебя всё в кашу смешано. поясню о чем речь. в идеале как должно быть: ты хочешь добавить какую-то новую возможность. например в нового игребального персонажа или механику. и ты сам себя спрашиваешь, в скольких местах нужно переделывать? в идеале таких мест должно быть меньше чем пальцев на руке. (в самом недостижимом идеале - в 1одном месте) у тебя просто сейчас очень сильно связанный код, с ним сложно работать и непродуктивно. от этого надо избавляться. 6) после того как появится куча модулей и прочего, можно приделать например юнит-тестики, и прочие тесты. это позволит иметь хоть какую-то уверенность в констистенстности вносимых изменений в код. 7) и замечинание про чрезмерное увлечение операторов ветвление (условным оператором). я понимаю что ты хочешь сделать, но вввидимо ввиду недостаточного опыта и навыков, ты используешь не те инструменты. тебе бы очень подошло обьектно-ориентированное что-то. тогда бы вместо перебирания вручную всех вариаций в if-else ты бы просто писал Player.takes_damage_from(Another_player) или Player.attacks(Another_player) и всё. Не нужно было бы для каждого отдельного вида бойца перебирать всё это через if. Вся конкретика происходящего была бы внутри бойца встроена уже. Сейчас фактически ты на себя взял всю ту низкоуровневую работу и те нюансы работы кода, которые бы не пришлось вручную делать при ООП. Т.е. ты вручную некие аналоги виртуальных фукнций к неким обьектам маппишь. Т.е. ты изобретаешь некое отдаленое подобие ООП с кучей лишних недостатков, вместо напрямую применения ООП. Что тебе мешает делать это явно? ты просто делаешь лишнюю рутинную работу, в которой легко наделать ошибок. 8) Не привязывайся к коду (в смысле симпатий), будь готов выкинуть его и переделать в любой момент. знаешь что тебе бы очень подошло, какой-нибудь github или что-то такое, где можно и документацию вести и обссуждение и прочее. Тут неочень подходяще и просто неудобно это. вощем тебе стоит сконцентироваться на чем-то общем, а не на частностях. т.е. допустим у тебя задача сделать норм движок для такого рода игр, чтобы ты смог туда без особых проблем добавлять новых персонажей, механики и остальное. и сейчас самый подходящий момент, чтобы начать переписывать всё. т.к. у тебя уже появился опыт и понимание где ты уперся в возможности текущей реализации. используй текущию реализацию как пример, и устраняй её недостатки в новой версии написанной с нуля. если конкретика интересует, то например вот: 734-738 CODE player_inoy = warrior[(warrior.index(player))-1] if player_inoy[7][0]<player_inoy[7][2]: player_inoy[7][0]=player_inoy[7][0]+player_inoy[7][1] if player_inoy[7][0]>player_inoy[7][2]: player_inoy[7][0]=player_inoy[7][2] в первой строчке ты делаешь слишком много лишних движений, чтобы получить результат. это потому что неочень подходящие и неудобные структуры данных используешь. ты в целом используешь подход: очень простые структуры данных, но очень сложный код для работы с ними. а надо наоборот. "умные" и хитрые структуры, но работать с ними максимально простым и понятным кодом. чтобы не было непонятного битов, индексов и прочего туда-сюда. в следующих строках происходит неведомо что. цифровые индексы не несут смысловой нагрузки (уверен, что ты сам не вспомнишь что скрывается за каждой цифрой). вот тут как раз enum будет в тему. таких аналогичных проблем ещё много в коде. можно ещё долго и упорно искать недостатки, в целом, ещё кроме наименования переменных и общего стиля особых дефектов нет (если принять во внимание уровень твоих навыков). по итогам: код конечно не production ready, требуется значительная проработка архитектуры и структуры и дизайна проекта. Спасибо большое!!! Вы указали куда двигаться и что для этого использовать. Вы мне очень помогли. Буду искать и учить новые методы реализации. Вы верно подметили что я использовал самые базовые неэффективные способы для реализации задуманного. Буду учить ООП и новые библиотеки что могут мне помочь в упращении кода. Завтра разберусь подробно в Вашей оценке и начну изучать неведомые мне вещи, что были Вами описаны. -------------------- Слава Богу за всё и за скорбь и за радость! |
![]() ![]() |
1 чел. читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
| Упрощённая версия | Сейчас: Вс., 25 окт. 2026, 01:40 |




Среда, 31 октября 2018, 14:34



















