Pages

Friday, February 28, 2020

Comparison of D2 Inventory Plugins

The Phrozen Keep hosts several UI plugins that expand the sizes of the player inventory, stash, and Horadric Cube. These can be dropped in and used in your Diablo 2 mod right away. Here's a rough comparison of several inventory plugins for D2 1.10+.

Mega Inventory Stash Cube (v1.10s & v1.10 Final)

This plugin increases the inventory, cube, and stash sizes while preserving the overall layout.

10x6 inventory 10x8 cube 10x10 stash
  • Inventory: 10x6
  • Cube: 10x8
  • Stash: 10x10

Saturday, January 18, 2020

Writing on GitHub: Markdown vs AsciiDoc vs reStructuredText

I've been experimenting with several popular markup languages for writing documentation on GitHub's wikis: GitHub Flavored Markdown, AsciiDoc, and reStructuredText.

AsciiDoc and reStructuredText offer advanced formatting features unavailable to GFM. Many of these features are not available in GitHub's wikis, because GitHub strips off most HTML tags and styles from the rendered HTML.

Here's a summary of my opinions on all three. Note that while I have plenty of experience with Markdown, I've used AsciiDoc and reStructuredText for only a few days. I may be poorly informed or biased.

GitHub Flavored Markdown

Pros
  • Easy and widespread
  • Can mix HTML
  • Simple table format
  • Can align table content using GFM markup
Cons
  • Table cells cannot span multiple rows or columns (workaround: use HTML tables)
  • No native support for definition lists (though HTML can be used directly)
  • No table of contents, though there are tools that can generate TOCs for you:
  • No footnotes
  • No native definition lists, though HTML can be used.

AsciiDoc

Pros
Cons
  • No strikethrough or underline syntax (workaround: use HTML tags)
  • Large margins between list items, due to them being enclosed in <p> tags. See relevant AsciiDoctor issue on GitHub.
  • Large padding in table cells, also due to them being enclosed in <p> tags.

Also check out tips on using AsciiDoc in GitHub.

reStructuredText

Pros
  • Familiar to Python developers, since the language (and many software written in it) uses reStructuredText for documentation.
  • Table cells can natively span multiple rows or columns
  • Definition lists
  • Footnotes that can be inserted anywhere, not just the bottom of the page
  • Table of contents (use the contents directive, since toctree is unsupported in GitHub)
Cons
  • No strikethrough or underline syntax (see docutils docs on why underline is missing)
  • Verbose and strict table syntax
  • Difficult to determine the level of a heading, if you haven't unified and memorized the hierarchy of heading underline symbols.
  • Table column width is controlled by the renderer instead of being managed by the browser. This may result in undesirable layouts on small screens.
  • Limited support for direct HTML, using the .. raw:: html directive.

Thursday, January 9, 2020

How to solve ACCESS_VIOLATION error when running Diablo 2 with PlugY in Windows 10

Disclaimer: I tested this under the following setup:

  • Windows 10 Enterprise x64 v1903
  • Diablo 2 v1.13c
  • PlugY v11.02

Windows 10 users may be stumped when attempting to run Diablo 2 with a Zipped version of PlugY. The game will refuse to run, showing this popup instead:

Popup message box that says, UNHANDLED EXCEPTION: ACCESS_VIOLATION (c0000005)

I got it working by copying the PlugY directory inside the ZIP file (the one containing files such as LocalizedStrings.ini) to the Diablo 2 installation directory (C:\Program Files (x86)\Diablo II). What an arbitrary fix.

Thursday, June 29, 2017

Diablo 2 마법 아이템 이름 번역하기

디아블로 2의 정식 한글화 버전은 거의 모든 단어를 음차로 번역하였다. 이를 개인적으로 다시 번역하면서 마법 아이템의 접두사(prefix)와 접미사(suffix) 때문에 문제를 겪었다.

ex) 크루얼 소드 오브 더 리치: 검(sword)에 '잔혹한(Cruel)' 접미사와 '거머리의(of the Leech)'이라는 접두사가 붙음

이 경우 이상적인 번역은 디아블로 3의 것처럼 "잔혹한 거머리의 검"이겠지만, 아이템 이름과 접사의 순서를 바꿀 수가 없기에 번역 방법을 두고 고민하였다.

  1. 잔혹한 검 거머리의
  2. 잔인한 검 (거머리의)
  3. 잔인한 검 / 거머리의
  4. 잔인한 검 거머리

원어의 의미를 살리면서 관형어를 번역하면 매끄럽게 번역하는 것이 불가능하다. 이 때문에 차라리 "잔혹한 검 (거머리 장식)"과 같은 식으로 접미사를 일종의 설명으로 치환하는 것도 고려하였다.

그런데...이 글(영문)에 따르면 string.tbl에서 MagicItemFormat이라는 키에 연결된 문자열을 찾으면 %0 %1 %2로 되어 있는데, 여기서 %0, %1, %2의 순서를 바꾸면 내가 원하는 대로 접두사, 접미사, 아이템 이름의 순서를 바꿀 수 있다고 한다. 이제 아이템 이름을 깔끔하게 번역할 수 있다. 만세!

Saturday, May 13, 2017

The Bob Levels 3탄 공략

Tim(tj9582 (at) yahoo.com)이 제작한 스타크래프트의 유저 자작 개그 캠페인인 The Bob Levels의 3탄 공략글이다.

다운로드는 여기에서 / 공략글 1탄 / 2탄 / 3탄

The Bob Levels 2탄 공략

Tim(tj9582 (at) yahoo.com)이 제작한 스타크래프트의 유저 자작 캠페인인 The Bob Levels 시리즈의 2탄 공략글이다.

2탄부터는 브루드워 임무로 진행된다.

합본 다운로드 파일에 같이 제공되는 MOD 파일(The Bob Levels.exe)를 실행하여 플레이할 수 있으며, 캠페인의 개그 분위기에 맞게 몇몇 유닛과 건물의 초상화, 유닛 그래픽 등이 바뀐다. 밥의 정신체 초상화는 선글라스를 쓰고 있고, 저그 에그에 그림판으로 그린 듯한 벌레가 꾸물대는 효과가 생기며, 클릭 시 꼬꼬댁 소리가 난다(...).

다운로드는 여기에서 / 공략글 1탄 / 2탄 / 3탄

The Bob Levels 1탄 공략

Tim(tj9582 (at) yahoo.com)이 제작한 스타크래프트의 유저 자작 개그 캠페인인 The Bob Levels의 1탄 공략글이다.

대부분의 미션은 블리자드의 전통(?)을 따라 자원 배치가 엉망이며 확장을 가져가기 여의치 않은 대신 적의 난이도는 어렵지 않으니 결국 자원을 빡빡하게 관리하여 한 방을 잘 모으면 어렵지 않게 깰 수 있다.

모든 미션 공통으로, 미션 브리핑이 끝난 후 잠시 기다리면 인터셉터 이안(Ian The Interceptor)라는 녀석이 나타나서 농담을 던지고 사라진다. 또한 모든 미션마다 맵 구석에 노인네(The Old Guy)라는 무적 상태의 중립 하이템플러 영웅 유닛이 숨겨져 있다. 여기에 아군 유닛을 접근하면 요즘 애들은 어쩌구, 내가 젊었을 적엔 어쩌구 하며 꼰대짓을 한다...

참고로 The Bob Levels 1은 스타크래프트 오리지널 당시 제작된 미션으로, 오리지널만으로 깨는 게 가능하다.

다운로드는 여기에서 / 공략글 1탄 / 2탄 / 3탄