NTSL, ASCII, Scripting и вообще у меня уже мозг болит

+46
DezerTв блоге BronyStation1323 декабря 2012, 21:29
Ребят, я ни капли не кодер и в языках программирования понимаю очень и очень мало.
И мне нужна помощь от любого более менее компетентного человека.

Проблема решена, всем спасибо…

Суть собсна вот в чем.
У меня стоит сервер на платформе BYOND по игре SpaceStation13
Весь код написан с использованием NTSL (смесь PHP, C + + и JavaScript)
И есть одна очень неприятная проблема связанная с буквой «я» (именно маленького регистра)…
Она просто не прописываться в чате и приходиться каждый раз набирать «Я», что довольно не удобно.
Проблема оказалась в ASCII
ASCII в BYOND
145: ‘     
146: ’
161: ¡  
162: ¢  
163: £  
164: ¤ 
165: ¥ 
166: ¦  
167: §  
168: ¨  
169: ©  
170: ª  
171: «  
172: ¬ 
173: ­
174: ®  
175: ¯  
176: °  
177: ±  
178: ²  
179: ³  
180: ´ 
181: µ 
182: ¶  
183: ·  
184: ¸  
185: ¹  
186: º  
187: »  
188: ¼ 
189: ½ 
190: ¾  
191: ¿  
192: À  
193: Á  
194: Â  
195: Ã  
196: Ä 
197: Å 
198: Æ  
199: Ç  
200: È  
201: É  
202: Ê  
203: Ë  
204: Ì 
205: Í 
206: Î  
207: Ï  
208: Ð  
209: Ñ  
210: Ò  
211: Ó  
212: Ô 
213: Õ 
214: Ö  
215: ×  
216: Ø  
217: Ù  
218: Ú  
219: Û  
220: Ü 
221: Ý 
222: Þ  
223: ß  
224: à  
225: á  
226: â  
227: ã  
228: ä 
229: å 
230: æ  
231: ç  
232: è  
233: é  
234: ê  
235: ë  
236: ì 
237: í 
238: î  
239: ï  
240: ð  
241: ñ  
242: ò  
243: ó  
244: ô 
245: õ 
246: ö  
247: ÷  
248: ø  
249: ù  
250: ú  
251: û  
252: ü 
253: ý 
254: þ  
255: 



«я» — 255 символ
«Я» — 223 символ

Нужен написать/откопать скрипт по замене ascii2text(255) на ascii2text(223)
Если кто знает как это осуществить, прошу отзовитесь…
Также если знаете альтернативу, как исправить этот касяк… пишите…

Если кому интересно покопаться в коде…
tgstation13.googlecode.com/svn/trunk/

18 комментариев

Так тебе и ответили великие табунисты-кодеры
Buk
0
Вдруг кого заинтересует…
К томуже, надежда умирает последней…
DezerT
0
Сразу вспомнились времена интернета по телефону и мадов
Спойлер
Zayka
0
А уверен что 255? В ASCII это вроде-бы символ неразрывного пробела.
skrysal
0
Символы с кодами 145–255 (Кодовая таблица 1251 – MS Windows)
145 ‘ 177 ± 209 С 241 с
146 ’ 178 І 210 Т 242 т
147 “ 179 і 211 У 243 у
148 ” 180 ґ 212 Ф 244 ф
149 • 181 μ 213 Х 245 х
150 – 182 ¶ 214 Ц 246 ц
151 — 183 · 215 Ч 247 ч
152  184 ё 216 Ш 248 ш
153 ™ 185 № 217 Щ 249 щ
154 љ 186 є 218 Ъ 250 ъ
155 › 187 » 219 Ы 251 ы
156 њ 188 ј 220 Ь 252 ь
157 ќ 189 Ѕ 221 Э 253 э
158 ћ 190 ѕ 222 Ю 254 ю
159 џ 191 ї 223 Я 255 я
DezerT
0
Так 1251-кирилица не ASCII. Хотя я ничего и не понял но советов сейчас надаю.
Можно в предложении в свойствах поддержку дополнительных текстовых служб включить, а в региональных стандартах выбрать русскому нужную кодировку (правда не знаю какую придется методом тыка варьировать кирилицы начни с ISO8859-5). Еще была какаето софтина от микрософт для запуска приложения с определенной кодировкой, но я не помню названия.
А если то что запускается есть «дос 16 разрядный» то можно поставить русификатор доса. Для старых программ типа FP2.6 или викингов помогало.
skrysal
0
объясняю суть проблемы, есть два серва, очень старый и новый, при компиляции старого «я» работает нормально, при компиляции нового «я» не работает и прихватывает за собой букву следующую после «я», к примеру слово «какаято» превращается в «какао» приходится писать с «Я» что напрягает…
Я понятия не имею как исправить этот баг, кроме как написанием скрипта о замене символа, который принимает сервер, на символ который нам нужен…
DezerT
0
В ASCII дальше 127го вообще ничего нету. Она семибитная.
eeyupbrony
+1
Стандартный набор символов ASCII использует только 7 битов для
каждого символа. Добавление 8-го разряда позволяет увеличить количество
кодов таблицы ASCII до 255. Коды от 128 до 255 представляют собой
расширение таблицы ASCII. Эти коды используются для кодирования
символов национальных алфавитов, а также символов псевдографики,
которые можно использовать, например, для оформления в тексте различных
рамок и текстовых таблиц.
DezerT
0
Да, и я тоько что нашел какую систему использует BYOND…
latin1 (ISO/IEC 8859-1)
DezerT
0
Не, отвечал-то я skysal'у, который про 255ый символ в ASCII говорил. Всё, что восьмибитное — уже не аски.
В общем, это всё равно оффтоп и помочь тебе я вряд ли смогу, ибо про эту самую игру и этот самый скриптовый язык впервые слышу %)

Хоть ссылку на сорцы сервера бы выставил. Может, кому будет охота покопаться...
eeyupbrony
0
Хоть ссылку на сорцы сервера бы выставил. Может, кому будет охота покопаться...

хорошее предложение…
и да, там расширеный ascii
tgstation13.googlecode.com/svn/trunk/
DezerT
0
Ага, только это «ISO 8859-1, also called ISO Latin-1» %)
Эдак можно сказать, что почти любая восьмибитная кодировка (koi-8, win-2151 и т.д.) — это «расширенная ascii». Что, в принципе, будет правдой, но вот словосочетание «расширенная ascii» без указания конкретного «расширения» смысла практически не несёт.
eeyupbrony
0
сам напиши, лол
Hibonicus
0
На анимусе вечно были проблемы с ней.
omgmax
0
именно…
DezerT
0
На анимусе она уже давно пофикшена на всех билдах. Спасибо кодерам.
DarkFoxs
0
Тема уже не актуальна, всем спасибо :3
DezerT
0
Обсуждение закрыто автором или администратором.